docker 如何添加证书

时间:2022-03-18 22:48:06

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