nginx + docker 反向代理

意义:

      可以使界面更加友好

      解决端口冲突问题

环境:ubuntu14.04   + docker + docker-compose + nginx

一、安装docker并配置加速器

   安装:curl -sSL https://get.daocloud.io/docker | sh

   配置加速器sudo curl -sSL https://get.daocloud.io/daotools/set_mirror.sh | sudo sh -s http://5a4cfe34.m.daocloud.io

二、安装docker-compose

   方式1:

        sudo apt-get update

        sudo apt-get install -y python-dev python-pip

        sudo pip install -U docker-compose

   方式2:

        sudo -i

        curl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose

        chmod +x  /usr/local/bin/docker-compose

        exit

三、安装nginx

    sudo apt-get install -y nginx(1.4.6版本的)

四、拉取nginx镜像

    sudo docker pull nginx:1.10

五、编写docker-compose.yml文件

   nginx:
     restart: always
     image: nginx:1.10
     ports:
       - "7000:80"
     volumes:
       - xxxxxx:/usr/share/nginx/html         #将前端代码关联到这个目录下

六、运行sudo docker-compose up -d启动容器

七、重复多次五、六将需要部署的前端代码封装到容器中

八、在/etc/nginx/conf.d/目录下新建一个xxxx.conf文件

    server {
  listen 80;
  server_name real_ip;   #ip地址,不能是localhost
  location /x/ {
        proxy_set_header  X-Real_IP $remote_addr;
        proxy_set_header  Host $http_host;
        proxy_pass        http://127.0.0.1:port/x/;
  }
           location /xx/ {
        proxy_set_header  X-Real_IP $remote_addr;
        proxy_set_header  Host $http_host;
        proxy_pass        http://127.0.0.1:port/xx/;
  }
  location /xxx/ {
        proxy_set_header  X-Real_IP $remote_addr;
        proxy_set_header  Host $http_host;
        proxy_pass        http://127.0.0.1:port/xxx/;
  }
  location /xxxx/ {
        proxy_set_header  X-Real_IP $remote_addr;
        proxy_set_header  Host $http_host;
        proxy_pass        http://127.0.0.1:port/xxxx/;
  }
}

九、重启nginx

    sudo service nginx restart

十、下面就可以在浏览器中使用ip/x/的形式进行访问了

   

你可能感兴趣的:(nginx,docker)