在Dokploy中通过Cloudflare Tunnel发布应用

通过 Cloudflare Tunnel,你可以不需要公网 IP、不需要在路由器/防火墙开启 80 或 443 端口,就能安全地将 Dokploy 上的应用发布到互联网。

核心流程图

用户 -> Cloudflare 域名 (HTTPS) -> Cloudflare 隧道 -> Docker 内部网络 (HTTP) -> 你的应用容器


第一步:在 Cloudflare 创建隧道 (Tunnel)

  1. 登录 Cloudflare Zero Trust
  2. 进入 Networks -> Tunnels -> Create a Tunnel
  3. 选择 Cloudflared,起个名字(如 my-server)。
  4. 在安装页面,找到 Connector Token(那一长串字符串),复制备用。

第二步:在 Dokploy 中部署隧道服务

在 Dokploy 中新建一个 Compose 服务(建议命名为 cloudflare-tunnel),使用以下配置:

services:
  cloudflared:
    image: 'docker.1ms.run/cloudflare/cloudflared:latest'
    environment:
      - 'TUNNEL_TOKEN=你的TOKEN' # 建议在 Environment 变量中设置
    networks:
      - dokploy-network # 必须加入此网络
    restart: unless-stopped
    command: ["tunnel", "--no-autoupdate", "run"]

networks:
  dokploy-network:
    external: true

第三步:部署应用 (以 Excalidraw 为例)

部署应用时,务必确保它与隧道在同一个 Docker 网络中,以便隧道能通过“服务名”找到它。

添加评论
点赞收藏
点踩分享查看原文
评论
?
参与讨论