
nukengprodservice/stunnel本镜像为NUK工程生产力团队提供的stunnel工具容器化实现。stunnel是一款开源的TLS/SSL加密包装器,可将非加密的网络服务与TLS/SSL协议集成,实现数据传输加密,提升服务通信安全性。该镜像旨在简化stunnel的部署与配置,适用于工程环境中需对现有非加密服务添加安全通信层的场景。
准备stunnel配置文件
创建stunnel.conf配置文件,示例配置(加密本地HTTP服务):
ini[https] accept = 443 connect = 80 cert = /etc/stunnel/cert.pem key = /etc/stunnel/key.pem
启动容器
挂载配置文件和证书目录:
bashdocker run -d \ -p 443:443 \ -v /path/to/stunnel.conf:/etc/stunnel/stunnel.conf \ -v /path/to/certs:/etc/stunnel \ --name stunnel nuk-eng-prod/stunnel
通过环境变量注入配置内容(适用于简单场景):
STUNNEL_CONF:直接传入stunnel配置内容CERT_CONTENT:证书文件内容(PEM格式)KEY_CONTENT:私钥文件内容(PEM格式)示例:
bashdocker run -d \ -p 443:443 \ -e STUNNEL_CONF="[https]\naccept = 443\nconnect = 80" \ -e CERT_CONTENT="$(cat /path/to/cert.pem)" \ -e KEY_CONTENT="$(cat /path/to/key.pem)" \ --name stunnel nuk-eng-prod/stunnel
| 配置项 | 说明 | 示例值 |
|---|---|---|
accept | 监听端口(容器内) | 443 |
connect | 目标服务地址(格式:IP:端口) | 127.0.0.1:80 |
cert | 证书文件路径(容器内) | /etc/stunnel/cert.pem |
key | 私钥文件路径(容器内) | /etc/stunnel/key.pem |
client | 是否作为客户端模式(yes/no) | no(默认服务端模式) |
verify | 验证对等证书(0-不验证,1-验证) | 0 |
创建docker-compose.yml:
yamlversion: '3' services: stunnel: image: nuk-eng-prod/stunnel ports: - "443:443" volumes: - ./stunnel.conf:/etc/stunnel/stunnel.conf - ./certs:/etc/stunnel restart: unless-stopped
启动服务:
bashdocker-compose up -d






manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务