通过 Docker openssl 容器生成生成Nginx证书文件

使用 alpine/openssl 镜像生成证书

1. 拉取容器

shell 复制代码
[root@localhost ~]# docker run --rm alpine/openssl version
OpenSSL 3.3.3 11 Feb 2025 (Library: OpenSSL 3.3.3 11 Feb 2025)

2. 运行 alpine/openssl 生成证书(Nginx)

shell 复制代码
# 生成1个.key私钥文件,1个.crt的证书文件,存放在当前路径
[root@localhost ~]# docker run --rm -v $(pwd):/certs alpine/openssl req -x509 -newkey rsa:4096 -keyout /certs/server.key -out /certs/server.crt -days 365 -nodes -subj "/CN=vw.land.com"

解释命令:
docker run --rm: 运行一个容器并在完成后自动删除它。

-v $(pwd):/certs: 将当前目录挂载到容器内的 /certs 目录。

alpine/openssl: 使用的镜像。

req -x509: 生成自签名证书。

-newkey rsa:4096: 生成一个新的 RSA 4096 位的私钥。

-keyout /certs/key.pem: 指定私钥的输出路径。

-out /certs/cert.pem: 指定证书的输出路径。

-days 365: 设置证书的有效期为 365 天。

-nodes: 不加密私钥。

-subj "/CN=vw.land.com": 设置证书的主题(Common Name 为 vw.land.com)。

3. 查看证书

shell 复制代码
[root@localhost ~]# ll
-rw-r--r--. 1 root root 1814  3月  6 16:27 cert.pem
-rw-------. 1 root root 3272  3月  6 16:27 key.pem
相关推荐
Johny_Zhao1 分钟前
2025年6月Docker镜像加速失效终极解决方案
linux·网络·网络安全·docker·信息安全·kubernetes·云计算·containerd·yum源·系统运维
冰橙子id11 分钟前
centos7编译安装LNMP架构
mysql·nginx·架构·centos·php
hello kitty w27 分钟前
Python学习(7) ----- Python起源
linux·python·学习
十年磨一剑~37 分钟前
centos查看开启关闭防火墙状态
linux·运维·centos
无效的名字1 小时前
向日葵远程控制debian无法进入控制画面的解决方法
运维·debian
藥瓿亭1 小时前
K8S认证|CKS题库+答案| 7. Dockerfile 检测
运维·ubuntu·docker·云原生·容器·kubernetes·cks
搬码临时工2 小时前
如何把本地服务器变成公网服务器?内网ip网址转换到外网连接访问
运维·服务器·网络·tcp/ip·智能路由器·远程工作·访问公司内网
容器魔方2 小时前
KubeCon 抢鲜 | Kmesh与你共创高性能流量治理更优方案
云原生·容器·云计算
vortex52 小时前
探索 Shell:选择适合你的命令行利器 bash, zsh, fish, dash, sh...
linux·开发语言·bash·shell·dash
GalaxyPokemon2 小时前
LeetCode - 148. 排序链表
linux·算法·leetcode