You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tailscale Docker反向代理443端口失败,Vaultwarden访问异常求助

问题:Vaultwarden + Tailscale Serve 端口配置异常

问题现象

  • 运行仅监听80端口的Vaultwarden服务,未使用Tailscale JSON配置文件时,日志出现443端口连接拒绝错误:
2024/04/01 14:38:07 http: proxy error: dial tcp 127.0.0.1:443: connect: connection refused
  • 尝试使用JSON配置文件时,tailscaled无法连接Tailscale服务器,因此改为进入容器手动执行命令
  • 执行Tailscale Serve相关命令均出现异常:
    • tailscale serve https://localhost:443 和 tailscale serve --bg --https=443 127.0.0.1:443 触发502错误
    • tailscale serve --bg --tcp 443 tcp://127.0.0.1:443 可建立SSL连接,但无内容返回

当前Docker Compose配置

services:

  vaultwarden:
    image: vaultwarden/server:latest
    depends_on:
      - vaultwarden-tailscale
    container_name: vaultwarden
    restart: unless-stopped
    volumes:
     - vw-data:/data:rw
    environment:
     #- ADMIN_TOKEN=${ADMIN_TOKEN}
     - WEBSOCKET_ENABLED=true
     - DOMAIN=${DOMAIN}
    network_mode: service:vaultwarden-tailscale


  vaultwarden-tailscale:
    image: tailscale/tailscale:latest
    container_name: vaultwarden-tailscale
    hostname: vaultwarden
    environment:
      - TS_AUTHKEY=tskey-auth-KEYFILE
      - TS_STATE_DIR=/var/lib/tailscale
      #- TS_SERVE_CONFIG=/config/vaultwarden.json
    volumes:
      - ${PWD}/vaultwarden-tailscale/state:/var/lib/tailscale
      - ${PWD}/vaultwarden-tailscale/config:/config
      - /dev/net/tun:/dev/net/tun
    cap_add:
      - net_admin
      - sys_module
    restart: unless-stopped
    networks:
      - vaultwarden-net


volumes:
  vw-data:
    driver: local
  vaultwarden-tailscale:
    driver: local

networks:
  vaultwarden-net:
    external: true

解决方案建议

  • 修正端口映射逻辑:Vaultwarden默认监听80端口,Tailscale Serve需指向80而非443,执行以下命令:
    tailscale serve --bg --https=443 http://localhost:80
    
    该命令会让Tailscale在443端口提供HTTPS服务,并将请求转发至本地80端口的Vaultwarden。
  • 验证容器网络互通:由于两个容器共享网络栈,在tailscale容器内执行curl localhost:80,确认能正常获取Vaultwarden的响应。
  • 修复JSON配置文件:若要使用配置文件,确保内容正确指向80端口,示例配置:
    {
      "HTTPS": {
        "443": {
          "Handler": "proxy",
          "Proxy": "http://localhost:80"
        }
      }
    }
    
    同时确保配置文件权限正确,容器可读取,取消TS_SERVE_CONFIG的注释后重启容器。
  • 检查Tailscale节点状态:在容器内执行tailscale status,确认节点已正常接入Tailscale网络,排除认证或网络连接问题。

内容的提问来源于stack exchange,提问作者karadayi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.26 17:41:15