Remote Access
VylineをLAN外から使う場合は、Vylineのremote access制御に加えて、認証された到達経路を用意します。
Internetへ直接publishしない
ルーターからVylineの3000/tcpへ直接port forwardする構成は避け、VPNまたは認証付きreverse proxy / tunnelを使用します。
このページは外部アクセスが必要な場合だけ使います
自宅LANや同一端末だけでVylineを使うなら、Cloudflare、Tailscale、WireGuard、reverse proxyの追加は不要です。外から接続したい場合の候補を比較しています。
選択肢
| 方式 | 向く用途 | 特徴 |
|---|---|---|
| Cloudflare Tunnel + Access | Webブラウザから使う | Inbound port不要。Accessで認証を追加 |
| Tailscale | 自分の端末だけ | private overlay network。公開DNS不要 |
| WireGuard | 自前VPN | 柔軟だがrouting/鍵管理を自分で行う |
| Reverse proxy | 既存のNginx/Caddy環境 | TLS/auth/header設定を自分で管理 |
Vyline側の設定
VYLINE_LAN_ACCESS=falseが既定です。LANの別端末をサブデバイスとして使う場合はLAN accessを有効にし、UIのpairingで発行されたsessionを使います。
VYLINE_TRUST_REMOTE_OWNER
trueにするとtrusted proxy/VPN側の認証を前提にremote requestをownerとして扱う経路が有効になります。Tailscale ACL、Cloudflare Access、認証済みreverse proxy等でVylineへ到達できる主体を制限している場合だけ使用してください。
Cloudflare Tunnelを選ぶ場合
services:
vyline:
image: ghcr.io/tqmane/vyline:latest
networks: [vyline_net]
cloudflared:
image: cloudflare/cloudflared:latest
command: [tunnel, --no-autoupdate, run, --token, ${CLOUDFLARE_TUNNEL_TOKEN}]
depends_on: [vyline]
networks: [vyline_net]
networks:
vyline_net:
driver: bridge
Cloudflare Tunnelを選択した場合のoriginは http://vyline:3000。Docker内DNS名であり、PCブラウザに入力する名前ではありません。TailscaleやWireGuardを選ぶなら、このcompanion containerは不要です。
秘密情報をrepositoryへ入れない
CLOUDFLARE_TUNNEL_TOKEN、LINE session/token、data/、storage/、backup archiveは公開repositoryへcommitしないでください。