docker 配置nginx 部署html和动态代理

1.拉镜像

      命令:sudo docker pull nginx

2.运行容器

      命令:sudo docker run --name some-nginx -d -p 8080:80 nginx
image

3.拷贝容器内的配置文件到本地,进行修改等操作

  命令:sudo docker cp some-nginx:/etc/nginx/nginx.conf /opt/nginx/nginx.conf
  命令:dudo docker cp some-nginx:/etc/nginx/conf.d /opt/nginx/conf.d
image

4.到官方下载个tar版本的nginx,然后将nginx/html目录拷贝到/opt/nginx目录中

image.png

5.到/opt/nginx目录中创建一个web.conf

  命令:sudo vim web.conf
  内容如下:

upstream back {
server 10.6.73.250:18081;
}

server {
listen 80;
server_name 192.168.213.130; # 域名或者IP

charset koi8-r;

charset utf-8;

access_log logs/host.access.log main;

当访问带有/auth/api/v1 接口时代理访问10.6.73.250:18081

location /auth/api/v1 {
proxy_pass http://back;
}

location /login.html {
alias /etc/nginx/user_oauth/;
#autoindex on;
#index login.html;
}

location / {
root /etc/nginx/user_oauth; #资源所在目录位置
#root /opt/git_projects/user_oauth;
index login.html; #首页
}

location ~ .*.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$ {
root /etc/nginx/user_oauth/; #资源所在目录位置
#alias /etc/nginx/user_oauth/assets/;
expires 7d;
}
}

6.到/opt/nginx目录修改nginx.conf

 命令:sudo vim nginx.conf
 
 在末尾加入: include /etc/nginx/web.conf;
image.png

7.删除已经存在的nginx 容器

 命令:sudo docker rm 容器ID

8.重启运行启动一个nginx容器

  命令:docker run --name some-nginx -p 8080:80 -v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf -v /opt/nginx/web.conf:/etc/nginx/web.conf -v /opt/git_projects/user_oauth:/etc/nginx/user_oauth -v /opt/nginx/conf.d:/etc/nginx/conf.d -v /opt/nginx/html:/usr/share/nginx/html -v /opt/nginx/html:/etc/nginx/html -d nginx

需要映射的文件如下:
-v /opt/nginx/nginx.conf:/etc/nginx/nginx.conf /opt/nginx/nginx.conf目录里的配置文件将映射到docker nginx容器的/etc/nginx/nginx.conf 配置文件
-v /opt/nginx/web.conf:/etc/nginx/web.conf /opt/nginx/web.conf 目录里的配置文件将映射到docker nginx容器的/etc/nginx/web.conf 配置文件
-v /opt/git_projects/user_oauth:/etc/nginx/user_oauth /opt/git_projects/user_oauth 目录里的件将映射到docker nginx容器的/etc/nginx/user_oauth目录文件 (这个文件是静态html文件目录)
-v /opt/nginx/conf.d:/etc/nginx/conf.d /opt/nginx/conf.d目录里的件将映射到docker nginx容器的/etc/nginx/conf.d目录文件
-v /opt/nginx/html:/etc/nginx/html /opt/nginx/html目录里的件将映射到docker nginx容器的/etc/nginx/html目录文件

我们修改宿主机上的 映射文件后 直接重启docker nginx容器即可 方便修改配置信息

9.目录文件

http://note.youdao.com/noteshare?id=3050f3252f0678f1c25d282de3b177ba

你可能感兴趣的:(docker 配置nginx 部署html和动态代理)