加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

在docker中生成自签名证书

发布时间:2020-12-16 03:27:49 所属栏目:安全 来源:网络整理
导读:我需要在docker启动时生成自签名证书. 基本上我们的码头工人开始使用大厅ci.所以它必须在dockerfile中,并且不能使用docker run使用任何选项. 让我知道对此的任何意见 最佳答案 简单的RUN命令有什么问题?它适用于我,并且已成功创建自签名证书. FROM debian:w

我需要在docker启动时生成自签名证书.
基本上我们的码头工人开始使用大厅ci.所以它必须在dockerfile中,并且不能使用docker run使用任何选项.

让我知道对此的任何意见

最佳答案
简单的RUN命令有什么问题?它适用于我,并且已成功创建自签名证书.

FROM debian:wheezy

RUN apt-get update && 
    apt-get install -y openssl && 
    openssl genrsa -des3 -passout pass:x -out server.pass.key 2048 && 
    openssl rsa -passin pass:x -in server.pass.key -out server.key && 
    rm server.pass.key && 
    openssl req -new -key server.key -out server.csr 
        -subj "/C=UK/ST=Warwickshire/L=Leamington/O=OrgName/OU=IT Department/CN=example.com" && 
    openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

进入Dockerfile后,在映像构建期间仅创建一次证书;然后你有图像中的证书.

如果每次容器启动时都需要新的自签名证书,则可以使用外部shell脚本.像这样:

#!/bin/bash

openssl genrsa -des3 -passout pass:x -out server.pass.key 2048
openssl rsa -passin pass:x -in server.pass.key -out server.key
rm server.pass.key
openssl req -new -key server.key -out server.csr 
    -subj "/C=UK/ST=Warwickshire/L=Leamington/O=OrgName/OU=IT Department/CN=example.com"
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

然后将该shell脚本放入Dockerfile并设置默认执行:

FROM debian:wheezy

RUN apt-get update && 
    apt-get install -y openssl

COPY generate-certificate.sh /tmp/generate-certificate.sh

CMD [ "/tmp/generate-certificate.sh" ]

在这种情况下,每次使用docker run ….启动容器时,都会生成一个新的唯一证书.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读