如何在Docker容器中为Stimulsoft BI Server配置HTTPS安全访问
在 Stimulsoft BI Server 2025.3.1 版本中,新增了在 Docker 容器中运行 BI Server 的能力。本文将为大家介绍如何在容器环境中为 BI Server 配置 HTTPS 协议的数据传输,从而实现安全、加密的访问。
为什么需要 HTTPS?
**HTTPS(SSL/TLS 证书)**能够在客户端和服务器之间建立加密连接,确保数据传输安全,同时验证网站的真实性。
[*]数据保护:防止敏感数据在传输过程中被窃取或篡改;
[*]用户信任:浏览器中的锁形图标代表连接安全;
[*]合规要求:满足行业安全标准与合规要求。
在 .NET 环境中,可以选择使用 本地自签名证书(开发/测试环境适用)或 权威机构颁发的证书(生产环境必须使用)。
生成本地证书
在开发测试阶段,可以通过以下命令生成一个本地.pfx证书:
dotnet dev-certs https -ep d:/aspnetapp.pfx -p 123456参数说明:
[*]-ep 指定证书保存路径
[*]-p 设置证书密码
⚠️ 注意:此证书仅适用于开发和测试环境。在生产环境中,请务必使用权威 CA 颁发的正式证书。
配置证书到 Docker 容器
[*]在存放 Docker 配置的目录下新建一个文件夹stimulsoft-server;
[*]将生成的证书(如aspnetapp.pfx)复制到该文件夹中;
[*]编辑docker-compose.yml文件,配置 HTTPS 所需的环境变量:
environment:
ASPNETCORE_HTTPS_PORTS: 8081
Urls: "https://*:8081;http://*:8080"
ASPNETCORE_Kestrel__Certificates__Default__Path: "/var/lib/stimulsoft-server/aspnetapp.pfx"
ASPNETCORE_Kestrel__Certificates__Default__Password: 123456同时在volumes中添加挂载目录:
volumes:
- ./stimulsoft-server:/var/lib/stimulsoft-server启动容器
执行以下命令启动服务:
docker-compose up此时:
[*]可通过 HTTPS 协议访问:https://localhost:8081
[*]也可通过 HTTP 协议访问:http://localhost:8080
完整的 docker-compose.yml 示例
services:
server:
image: stimulsoft/server:dev
ports:
- 8080:8080
- 8081:8081
volumes:
- ./stimulsoft-server:/var/lib/stimulsoft-server
environment:
ASPNETCORE_HTTP_PORTS: 8080
ASPNETCORE_HTTPS_PORTS: 8081
Urls: "https://*:8081;http://*:8080"
ASPNETCORE_Kestrel__Certificates__Default__Path: "/var/lib/stimulsoft-server/aspnetapp.pfx"
ASPNETCORE_Kestrel__Certificates__Default__Password: 123456
Storage__DatabaseType: "MySql"
Storage__MySqlConnectionString: "Server=mysql; port=3306; Database=server; UserId=root; Pwd=root;"
mysql:
image: mysql:8.0
ports:
- 3306:3306
volumes:
- './mysql:/var/lib/mysql'
environment:
MYSQL_ROOT_PASSWORD: "root"
MYSQL_DATABASE: "server"总结
通过在 Docker 容器中为 Stimulsoft BI Server 配置 HTTPS,可以有效提升系统的安全性和用户信任度。在开发阶段,您可以使用本地自签名证书进行快速测试;但在生产环境中,请务必使用权威机构签发的证书。
以上示例中的端口号、证书文件名、密码及 URL 均为演示用,实际部署时请根据您的环境进行调整。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
页:
[1]