DockerやPodmanのコンテナへ自動でルーティングし、Let's Encrypt証明書、SSO、アイドル時のスリープ機能を備えた軽量リバースプロキシ。
marvinvr/docktail
docktail.* ラベルを使って Docker コンテナを Tailscale Services として公開。コンテナごとの Tailscale デバイスやポート公開は不要です。
代替できる製品:TSDProxy
- スター
- 1,408
- フォーク
- 51
- 未解決の Issue
- 12
- 最終コミット
- 12 時間前
これは何?
DockTail は Docker コンテナを監視し、docktail.* ラベルを読み取って、該当するコンテナをネイティブな Tailscale Services として公開します。DockTail は Docker ネットワーク上の IP に直接プロキシするため、通常はアプリの Docker ポートを公開する必要はありません。
HTTP、HTTPS、TCP、TLS 終端済み TCP サービスに対応し、バックエンドから tailnet クライアントの IP を確認できるようにする PROXY protocol と、パブリックアクセス用の Tailscale Funnel も利用できます。1つのコンテナで複数のサービスを公開でき、コンテナの再起動や IP の変更時には自動で状態を調整します。認証情報は OAuth または API key で指定でき、ドキュメントに記載されているとおり、コンテナ、静的バイナリ、Compose、Podman、Swarm、Kubernetes 環境で実行できます。
DockTail は Go で書かれており、AGPL-3.0 ライセンスで提供されています。オプションのホステッドサービス DockTail Cloud ダッシュボードは、キーを設定するとエージェントからメタデータを受信します。この変数を設定しなければ、その用途でエージェントが外部に接続することはありません。
主な機能
- 01docktail.* ラベルからコンテナを自動検出します。
- 02OAuth または API key の認証情報を使って Tailscale services を作成します。
- 03HTTP、HTTPS、TCP、TLS 終端済み TCP に対応します。
- 04オプションの PROXY protocol により、バックエンドから tailnet クライアントの IP を確認できます。
- 05パブリックインターネットからのアクセスに Tailscale Funnel を利用できます。
- 061つのコンテナで複数のサービスを公開でき、再起動時には状態を調整します。
ユースケース
- ホストのポートを開放せずに、homelab の Web アプリを Tailscale HTTPS 経由で公開する。
- tailnet クライアントに TCP 経由でデータベースを公開する。
- PROXY protocol を使って実際の tailnet クライアント IP を必要とするリバースプロキシを運用する。
- Tailscale Funnel 経由で webhook エンドポイントをパブリックアクセス可能にする。
クイックスタート
- 1
DockerソケットとTailscale OAuth変数を設定したdocktailのComposeサービスを追加し、アプリのコンテナにラベルを付けます
- 2
スタックを起動します
docker compose up -d - 3
tailnetからアプリを開きます
curl http://myapp.your-tailnet.ts.net
使う前に知っておきたいこと
- AGPL-3.0ライセンスのもとで提供されています。コピーレフトライセンスのため、ネットワーク経由で提供するサービスを改変した場合、ソースコードの開示が必要です。
- DockerホストがTailscaleに接続され、サービスのアドバタイズが許可されている必要があります。
- サービスの自動作成には、Tailscale OAuthまたはAPIキーの認証情報が必要です。
- Dockerソケットをマウントすると、コンテナからホストのDockerデーモンにアクセスできるようになります。
収録されている特集
トピック
よくある質問
- docktail とは?
- docktail.* ラベルを使って Docker コンテナを Tailscale Services として公開。コンテナごとの Tailscale デバイスやポート公開は不要です。 DockTail は Docker コンテナを監視し、docktail.* ラベルを読み取って、該当するコンテナをネイティブな Tailscale Services として公開します。DockTail は Docker ネットワーク上の IP に直接プロキシするため、通常はアプリの Docker ポートを公開する必要はありません。
- docktail は無料で使えますか?ライセンスは?
- docktail は AGPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- docktail は今もメンテナンスされていますか?
- 活発にメンテナンス中。docktail の最終コミットは 2026年11月7日 です。
- docktail は何に使えますか?
- ホストのポートを開放せずに、homelab の Web アプリを Tailscale HTTPS 経由で公開する。 tailnet クライアントに TCP 経由でデータベースを公開する。 PROXY protocol を使って実際の tailnet クライアント IP を必要とするリバースプロキシを運用する。 Tailscale Funnel 経由で webhook エンドポイントをパブリックアクセス可能にする。
- docktail のインストール方法は?
- DockerソケットとTailscale OAuth変数を設定したdocktailのComposeサービスを追加し、アプリのコンテナにラベルを付けます スタックを起動します: docker compose up -d tailnetからアプリを開きます: curl http://myapp.your-tailnet.ts.net
- docktail はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/marvinvr/docktail
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Docker、Kubernetes、Tailscaleからサービス、ダッシュボード、ドキュメントを自動検出して一覧表示する、セルフホスト型ランディングページ。
認証、MFA、SSO、ボット対策を備えた、セキュアなリバースプロキシ兼アプリ管理・ゲートウェイのセルフホスト型ホームサーバープラットフォーム。
YAMLを手編集せずに、Traefikのルート、ミドルウェア、サービス、証明書、ログを管理できるセルフホスト型Web UI。
160以上のセルフホストアプリを事前設定済みで提供し、リバースプロキシや認証機能も備えた、ホームラボ向けDocker・Docker Compose環境の自動構築ツールです。
自宅ラボやNAS向けのセルフホスト型ネットワークゲートウェイ。DDNS、ポートフォワーディング、リバースプロキシ、ACME証明書、WAFなどを単一バイナリに集約。