写在前面的话:现在docker这么火,我们也来研究下。
准备工作:主机安装好了docker,nginx,同时镜像nginx也是pull了。
开始工作,先把nginx配置好,例如
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端口访问就不多说了。
至于hhh1.com;hhh2.com;hhh3.com;分别配置给50001,50002,50003.
到这里先让主机的nginx服务跑起来吧。
---------------------------------------------------
找个放www的目录,依次创建hhh1,hhh2,hhh3,目录。
只说明一个,hhh2的例子;
现在进到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 是对应不同目录,大家的项目就不会冲突,赋予不同的权限就好了。