写在前面的话:如今docker这么火,咱们也来研究下。html
准备工做:主机安装好了docker,nginx,同时镜像nginx也是pull了。nginx
开始工做,先把nginx配置好,例如web
server { listen 80; root /home/ubuntu/www; index index.html index.htm; server_name hhh.com; }
server { listen 80; server_name hhh1.com; location / { proxy_pass ; } }
server { listen 80; server_name hhh2.com; location / { proxy_pass ; } }
server { listen 80; server_name hhh3.com; location / { proxy_pass ; } }
hhh.com;是直接能够在80端口访问就很少说了。docker
至于hhh1.com;hhh2.com;hhh3.com;分别配置给50001,50002,50003.shell
到这里先让主机的nginx服务跑起来吧。
---------------------------------------------------ubuntu
找个放www的目录,依次建立hhh1,hhh2,hhh3,目录。app
只说明一个,hhh2的例子;webapp
如今进到hhh2的目录:测试
建立目录三个logs(做用放日志);www(网站的文件);config(nginx配置文件,镜像要用的);网站
在config下建立配置文件,任意名字,简单配置信息;
server { listen 80; root /usr/share/nginx/html; index index.html index.htm; server_name hhh2.com; }
保存好,重点配置解说:listen 80 ,监听80端口,与下面命令对应的。
root /usr/share/nginx/html;这个是这个镜像中的一个目录,目前我也就知道有这个目录,也不要改了;
server_name hhh2.com;这就是上面说过的域名;
重点就这么多;网站文件放好就好了,作了静态html的测试,有空深刻测试;
docker run -it -p 50002:80 -v `pwd`/www:/usr/share/nginx/html -v `pwd`/config:/etc/nginx/sites-enabled -v `pwd`/logs:/var/log/nginx -d daocloud.io/nginx
这命令简单说说参数:run(主要);-it(这是两个参数,具体百度,我给忘了), -p端口映射 主机端口:容器端口; -v(目录映射,·pwd·/www这是当前操做的文件下的www目录映射:/usr/share/nginx/html这就是咱们在以前的配置文件中的root,目录, 同理就知道咱们映射了配置文件夹,和日志文件夹,这样你就能很方便看日志),-d(后台运行?) 最后是镜像名;推荐下挺好用的。国内的。到这里你就启动了一个nginx服务,当静态的web先用吧;
同理配置其余的;这时候访问hhh.com 是主机的webapp,hhhx.com 是对应不一样目录,你们的项目就不会冲突,赋予不一样的权限就行了。