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