环境配置|docker配置nginx及HTTPS操作

前提已搭建完成
1:停止nginx
docker stop nginx
2:删除产生的配置文件
docker rm nginx
3:run 配置--这一步很关键,需要将操作到的文件都映射出来,注意文件夹是否存在,不存在的情况需要先创建,
配置https就需要加上 -p 443:443 以及 -v /mydata/nginx/nginx/ssl:/etc/nginx/ssl:ro \
命令如下
docker run -p 80:80 -p 443:443 --name nginx -v /mydata/nginx/html:/usr/share/nginx/html -v /mydata/nginx/logs:/var/log/nginx -v /mydata/nginx/nginx/nginx.conf:/etc/nginx/nginx.conf:ro -v /mydata/nginx/nginx/ssl:/etc/nginx/ssl:ro -v /mydata/nginx/nginx/conf.d:/etc/nginx/conf.d -d nginx:1.10
运行成功则不会报错,报错了自行百度 ,成功之后映射之后就可以开始按正常的nginx配置了
/mydata/nginx/nginx/conf.d文件夹下面创建一个default.conf文件,
默认跳转到运行的java项目下
我这里的https证书是腾讯云申请的放在了/mydata/nginx/nginx/ssl文件夹里面,使用的是相对目录
server {
listen 443 ssl;
#填写绑定证书的域名
server_name 域名;
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
#root /usr/share/nginx/html;
#index index.html index.htm;
#证书文件名称
ssl_certificatessl/1_XXX.crt;
#私钥文件名称
ssl_certificate_key ssl/2_XXX.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://域名:8085;
}
#管理后台
location /admin {
root/usr/share/nginx/html;
autoindex on;
indexindex.html index.htm;
}

}
server {
listen80;
server_name 域名;
location / {
#root/usr/share/nginx/html;
#indexindex.html index.htm;
proxy_pass http://域名:8085;
}
#管理后台
location /admin {
root/usr/share/nginx/html;
autoindex on;
indexindex.html index.htm;
}
#Universal Link 文件
location /.well-known {
root/usr/share/nginx/html;
autoindex on;
indexindex.html index.htm;
}
error_page500 502 503 504/50x.html;
location = /50x.html {
root/usr/share/nginx/html;
}
}
配置完成后重启nginx
【环境配置|docker配置nginx及HTTPS操作】docker restart nginx

    推荐阅读