一台服务器上部署docker,开启多web时代

写在前面的话:如今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 是对应不一样目录,你们的项目就不会冲突,赋予不一样的权限就行了。

相关文章
相关标签/搜索