返回 Skill 列表
extension
分类: 开发与工程无需 API Key

docker-deployment

使用Nginx HTTPS配置和Cloudflare Tunnel集成的Docker容器部署。在使用Docker部署Web应用程序、配置SSL/TLS证书、设置Nginx反向代理或与Cloudflare Tunnel集成以实现安全外部访问时使用。

person作者: jakexiaohubgithub

Docker Deployment with Nginx HTTPS

Quick Start

For Docker web application deployment with HTTPS support:

  1. Configure Nginx with SSL certificates (see nginx-https.md)
  2. Set up docker-compose.yml with certificate volume mounting
  3. Configure Cloudflare Tunnel to connect external domain to local container

Common Tasks

| Task | Reference | |------|-----------| | Nginx HTTPS configuration | nginx-https.md | | Cloudflare Origin Certificate | cf-origin-cert.md | | Docker data persistence | data-persistence.md | | Cloudflare Tunnel setup | cf-tunnel.md |

Architecture Overview

Internet → Cloudflare Edge (HTTPS) → Cloudflare Tunnel → Ubuntu/Docker (Nginx)

Key Principles

  • Always use named Docker volumes for persistent data
  • Nginx should redirect HTTP (80) to HTTPS (443) in production
  • Cloudflare Origin Certificates are for CF-to-origin encryption only
  • Tunnel connects to HTTP or HTTPS - configure based on nginx setup

Troubleshooting

HTTPS not working after enabling Cloudflare force HTTPS?

  • Check if nginx listens on port 443
  • Verify SSL certificates are mounted correctly
  • Ensure Cloudflare Tunnel service URL matches (http:// or https://)

Data lost after container restart?

  • Check docker-compose.yml uses named volumes, not bind mounts for critical data
  • Verify database path points to mounted volume directory

See individual reference files for detailed solutions.