defectdojo/defectdojo-nginxNginx for DefectDojo是专为DefectDojo安全漏洞管理平台设计的专用Nginx Docker镜像,提供预配置的Web服务环境,支持反向代理、静态资源处理、请求路由及SSL终端,旨在简化DefectDojo的部署流程并提升访问性能与安全性。
作为DefectDojo平台的前端Web服务器,处理客户端请求并转发至应用后端,提供稳定、安全的访问入口。
快速搭建本地DefectDojo测试环境,无需手动配置Nginx,专注于平台功能验证。
通过自定义Nginx配置,支持同一服务器部署多个DefectDojo实例的请求路由隔离。
bashdocker run -d \ --name defectdojo-nginx \ -p 80:80 \ -p 443:443 \ -v /path/to/defectdojo/static:/usr/share/nginx/html \ -v /path/to/ssl/certs:/etc/nginx/ssl \ -v /path/to/custom/nginx.conf:/etc/nginx/conf.d/default.conf \ defectdojo/nginx:latest
-p 80:80:映射HTTP端口-p 443:443:映射HTTPS端口(需提前准备SSL证书)-v /path/to/defectdojo/static:挂载DefectDojo静态资源目录-v /path/to/ssl/certs:挂载SSL证书目录(包含.crt和.key文件)-v /path/to/custom/nginx.conf:挂载自定义Nginx配置文件(可选)在DefectDojo完整部署架构中,可与应用后端、数据库等服务协同工作:
yamlversion: '3.8' services: nginx: image: defectdojo/nginx:latest container_name: defectdojo-nginx ports: - "80:80" - "443:443" volumes: - ./defectdojo/static:/usr/share/nginx/html - ./ssl:/etc/nginx/ssl - ./nginx/conf.d:/etc/nginx/conf.d depends_on: - defectdojo-web restart: unless-stopped defectdojo-web: image: defectdojo/defectdojo:latest # DefectDojo应用服务配置...
通过环境变量可调整部分Nginx配置(需镜像支持动态配置):
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
BACKEND_HOST | DefectDojo应用后端服务地址 | defectdojo-web |
BACKEND_PORT | DefectDojo应用后端服务端口 | 8000 |
STATIC_ROOT | 静态资源目录路径 | /usr/share/nginx/html |
ENABLE_SSL | 是否启用SSL(true/false) | false |
SSL_CERT_PATH | SSL证书文件路径(启用SSL时必填) | /etc/nginx/ssl/cert.crt |
SSL_KEY_PATH | SSL私钥文件路径(启用SSL时必填) | /etc/nginx/ssl/cert.key |
如需深度定制Nginx规则,可通过挂载自定义配置文件覆盖默认配置:
custom.conf):nginxserver { listen 80; server_name defectdojo.example.com; # 重定向至HTTPS(如启用SSL) if ($enable_ssl = "true") { return 301 [***] } location /static/ { alias /usr/share/nginx/html/; expires 1d; add_header Cache-Control "public"; } location / { proxy_pass [***] proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } }
bashdocker run -d \ --name defectdojo-nginx \ -p 80:80 \ -e BACKEND_HOST=my-defectdojo-web \ -e BACKEND_PORT=8080 \ -v ./custom.conf:/etc/nginx/conf.d/default.conf \ defectdojo/nginx:latest
worker_processes、worker_connections等性能参数Nginx for DefectDojo是专为DefectDojo安全漏洞管理平台设计的专用Nginx Docker镜像,提供预配置的Web服务环境。该镜像针对DefectDojo的架构特点优化,支持反向代理、静态资源处理、SSL终端及请求路由,旨在简化平台部署流程并提升访问性能与安全性。
作为DefectDojo平台的前端Web服务器,处理客户端请求并转发至应用后端,提供稳定、安全的生产级访问入口。
快速搭建本地DefectDojo测试环境,无需手动配置Nginx,专注于平台功能验证与开发调试。
通过自定义Nginx配置,支持同一服务器部署多个DefectDojo实例的请求路由隔离与端口映射。
bashdocker run -d \ --name defectdojo-nginx \ -p 80:80 \ -p 443:443 \ -e BACKEND_HOST=defectdojo-web \ -e BACKEND_PORT=8000 \ -v /path/to/defectdojo/static:/usr/share/nginx/html \ -v /path/to/ssl/certs:/etc/nginx/ssl \ -v /path/to/custom/conf.d:/etc/nginx/conf.d \ defectdojo/nginx:latest
-p 80:80/-p 443:443:映射HTTP/HTTPS端口-e BACKEND_HOST:DefectDojo应用后端服务主机名/IP-e BACKEND_PORT:DefectDojo应用后端服务端口-v /path/to/defectdojo/static:挂载DefectDojo静态资源目录-v /path/to/ssl/certs:挂载SSL证书目录(包含.crt和.key文件)-v /path/to/custom/conf.d:挂载自定义Nginx配置目录(覆盖默认配置)典型的DefectDojo完整部署架构中,与应用服务协同工作的配置:
yamlversion: '3.8' services: nginx: image: defectdojo/nginx:latest container_name: defectdojo-nginx ports: - "80:80" - "443:443" environment: - BACKEND_HOST=defectdojo-web - BACKEND_PORT=8000 - ENABLE_SSL=true - SSL_CERT_PATH=/etc/nginx/ssl/cert.crt - SSL_KEY_PATH=/etc/nginx/ssl/cert.key volumes: - ./defectdojo/static:/usr/share/nginx/html - ./ssl:/etc/nginx/ssl - ./nginx/conf.d:/etc/nginx/conf.d depends_on: - defectdojo-web restart: unless-stopped defectdojo-web: image: defectdojo/defectdojo:latest # DefectDojo应用服务配置(数据库连接、环境变量等) restart: unless-stopped
通过环境变量可动态调整核心配置(无需修改配置文件):
| 环境变量名 | 说明 | 默认值 |
|---|---|---|
BACKEND_HOST | DefectDojo应用后端服务地址/主机名 | defectdojo-web |
BACKEND_PORT | DefectDojo应用后端服务端口 | 8000 |
STATIC_ROOT | 静态资源目录路径 | /usr/share/nginx/html |
ENABLE_SSL | 是否启用SSL(true/false) | false |
SSL_CERT_PATH | SSL证书文件路径(启用SSL时必填) | /etc/nginx/ssl/cert.crt |
SSL_KEY_PATH | SSL私钥文件路径(启用SSL时必填) | /etc/nginx/ssl/cert.key |
CLIENT_MAX_BODY_SIZE | 客户端最大请求体大小(如100M) | 10M |
如需深度定制Nginx规则(如URL重写、高级缓存策略),可通过挂载自定义配置文件实现:
./nginx/conf.d/custom.conf):nginxserver { listen 80; server_name defectdojo.example.com; # 强制HTTPS重定向(当ENABLE_SSL=true时) if ($enable_ssl = "true") { return 301 [***] } # 静态资源配置 location /static/ { alias $static_root/; expires 7d; add_header Cache-Control "public, max-age=604800"; add_header X-Content-Type-Options "nosniff"; } # 反向代理至DefectDojo后端 location / { proxy_pass [***] proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_connect_timeout 30s; proxy_read_timeout 90s; client_max_body_size $client_max_body_size; } } # SSL配置(当ENABLE_SSL=true时生效) server { listen 443 ssl; server_name defectdojo.example.com; ssl_certificate $ssl_cert_path; ssl_certificate_key $ssl_key_path; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; # 静态资源与反向代理配置(同HTTP server块) location /static/ { ... } location / { ... } }
yamlvolumes: - ./nginx/conf.d:/etc/nginx/conf.d # 挂载自定义配置目录
STATIC_ROOT配置保持一致worker_processes、worker_connections)restart: unless-stopped,确保服务稳定性
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务