本文已参与「新人创作礼」活动,一起开启掘金创作之路。
首先,申请免费证书,这个就不说了。
然后,将你要申请的域名,在云解析里,弄一个记录类型A
然后,才继续
Nginx安装 下载nginx1.10的docker镜像:
docker pull nginx:1.10 从容器中拷贝nginx配置 先运行一次容器(为了拷贝配置文件):
docker run -p 80:80 --name nginx
-v /mydata/nginx/html:/usr/share/nginx/html
-v /mydata/nginx/logs:/var/log/nginx
-d nginx:1.10
将容器内的配置文件拷贝到指定目录:
docker container cp nginx:/etc/nginx /mydata/nginx/ 修改文件名称:
mv nginx conf 终止并删除容器:
docker stop nginx docker rm nginx 使用docker命令启动:记得加上443(10个小时的折磨)
docker run -p 80:80 --name nginx -p 443:443 -v /mydata/nginx/html:/usr/share/nginx/html -v /mydata/nginx/logs:/var/log/nginx -v /mydata/nginx/conf:/etc/nginx -d nginx:1.10 然后搞配置
ip要写服务器的ip
docker stop nginx 停止
docker rm nginx 移除
docker run -p 80:80 --name nginx -p 443:443 -v /mydata/nginx/html:/usr/share/nginx/html -v /mydata/nginx/logs:/var/log/nginx -v /mydata/nginx/conf:/etc/nginx -d nginx
打开/mydata/nginx/conf/conf.d 里面的 default.conf文件
如果配置http就是上面就是第一段
如果是https就是第二段,将配置文件放在 和nginx.conf 这个文件同一级的cert文件下(没有自己创建一个文件夹)
server { listen 80; server_name www.cloudtiger.top; location / { proxy_set_header Host remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://112.74.36.41:8888; } }
server { listen 80; listen 443 ; server_name blog.cloudtiger.top;
ssl on;
root html;
index index.html index.htm;
#为虚拟主机指定pem格式的证书文件
ssl_certificate cert/cloudtiger.top.pem;
#为虚拟主机指定私钥文件
ssl_certificate_key cert/cloudtiger.top.key;
#ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
#指定使用的ssl协议
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://112.74.36.41:8888;
index index.html index.htm;
}
}
添加完配置文件后,重启nginx容器,并检查下日志看是否有error。
docker restart nginx docker logs nginx