1.升级处理:sudo apt-get update
缺包,包的版本旧等问题可以由此解决,如果不是的话那就是缺失认证,需要生成自己的认证证书。
2.生成自己的认证证书
先建一个文件夹
1
|
mkdir -p certs |
之后创建证书,证书生成在刚才创建的文件夹中
1
|
openssl req -newkey rsa:4096 -nodes -sha256 -keyout /root/certs/domain .key -x509 -days 365 -out /root/certs/domain .crt |
之后将certs生成的证书放到/etc/docker/目录下
之后重启docker服务 sudo service docker restart
Reboot之后即可
补充:使用Docker安装的nginx配置HTTPS证书
新建ssl.conf,将文件放入conf.d文件夹中
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
server { listen 443; server_name localhost; ssl on; root html; index index.html index.htm; ssl_certificate cert /1533224843981 .pem; ssl_certificate_key cert /1533224843981 .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 / { root html; index index.html index.htm; } } |
注意点:cert为相对路径,若是linux文件夹与nginx.conf,若是window则在conf文件夹下。
运行
1
2
3
4
|
docker run --name mynginx -p 443:443 - v /opt/data/nginx/nginx .conf: /etc/nginx/nginx .conf - v /opt/data/nginx/conf .d: /etc/nginx/conf .d /default .conf - v /opt/data/nginx/www : /www - v /opt/data/nginx/cert : /etc/nginx/cert - v /opt/data/nginx/ssl .conf: /etc/nginx/conf .d /ssl .conf -d nginx |
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。如有错误或未考虑完全的地方,望不吝赐教。
原文链接:https://blog.csdn.net/shifengwang123/article/details/102802794