コンテナ管理ツールのセルフホスティングは、開発者やハウスメンテナンス愛好者の間でますます人気が高まっています。Yachtは、近代的で軽量なDocker管理UIであり、Dockerコンテナ、イメージ、ネットワークの制御をスムーズに行うことができます。 このガイドでは、VPSにYachtをインストールして運用するステップバイステップの方法を紹介し、オープンソースツールを活用したセルフホストプロジェクトをサポートします。
なぜYachtをセルフホストするのか?
Yachtは、視覚的なインターフェースを提供することでDockerコンテナ管理を簡素化し、コンテナ化されたアプリケーションの展開、監視、トラブルシューティングを容易にします。VPS上にYachtをホスティングすることで、コスト効率が良く、信頼性の高い常時稼働のソリューションを実現できます。
適切なVPSの選び方
予算や地域に応じてVPSプロバイダーを選択します。一般的な選択肢は以下の通りです:
| プロバイダー | 価格 (EUR/USD/月) | リンク |
|---|---|---|
| Contabo | 5.99 EUR | Contabo |
| Hetzner Cloud | 4.15 EUR | Hetzner |
| DigitalOcean | 6 USD | DigitalOcean |
| Vultr | 6 USD | Vultr |
| Linode | 5 USD | Linode |
すべてのプロバイダーの詳細比較は、full VPS comparison を参照してください。ここでは、価格とパフォーマンスのバランスからHetzner Cloudを例にします。
前提条件
- Linuxコマンドラインの基本的知識
- Ubuntu 22.04 LTSまたは類似のシステムがインストールされたVPS
- rootまたはsudo権限を持つSSHアクセス
- ドメイン名(任意ですがSSLのために推奨)
ステップ1:VPSの準備
SSHで接続します。
ssh root@your-vps-ip
システムをアップデートします。
apt update && apt upgrade -y
DockerとDocker Composeをインストールします。
apt install -y docker.io docker-compose
systemctl enable --now docker
Dockerが正しく動作しているか確認します。
docker --version
docker-compose --version
ステップ2:Yacht用のDocker Composeファイル作成
Yacht用のディレクトリを作成します。
mkdir -p ~/yacht && cd ~/yacht
docker-compose.ymlファイルを作成します。
version: '3'
services:
yacht:
image: selfhostedpro/yacht:latest
container_name: yacht
ports:
- "8080:8080"
restart: unless-stopped
environment:
- TZ=Europe/Berlin
必要に応じてタイムゾーン(TZ)を設定します。
ステップ3:Yachtコンテナの起動
コンテナを起動します。
docker-compose up -d
コンテナの状態を確認します。
docker ps
起動後、http://your-vps-ip:8080にアクセスするとYachtのUIが表示されます。
ステップ4:Yachtの環境設定
ブラウザからhttp://your-vps-ip:8080にアクセスします。YachtのUIが表示されます。
- パスワードの設定や認証の有効化
- セキュリティを向上させるための設定(例:リバースプロキシのSSL設定)
ステップ5:Yachtインスタンスのセキュリティ強化(推奨)
CertbotとNginxを使用してHTTPSを有効にします。
- Nginxをインストール
apt install -y nginx
- リバースプロキシとしてNginxを設定
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
- SSL証明書の取得
apt install -y certbot python3-certbot-nginx
certbot --nginx -d your-domain.com
Nginxの設定をSSL対応に更新し、再起動します。
systemctl reload nginx
これで、安全にHTTPS経由でYachtにアクセスできます。
追加のヒント
- Yachtの設定を定期的にバックアップ
- Yacht Dockerイメージの更新を維持
docker-compose pull
docker-compose up -d
- PortainerやHeimdallなどの他のセルフホストアプリと連携して自動化を検討
よくある質問
1. Dockerを使ってVPSにYachtをインストールするにはどうすればいいですか?
docker-compose.ymlを作成し、最新のYachtイメージを指定してdocker-compose up -dを実行します。この方法は管理と更新を簡素化します。特にインターネットに公開する場合は、Dockerのセキュリティと最新状態を確保してください。
2. Yachtは複数のDockerホストの管理に適していますか?
Yachtは単一のホスト上のDockerコンテナのみを管理します。複数のホストを管理したい場合は、PortainerやRancherのようなツールを検討してください。Yachtは、1つのVPSやハウスメンテナンスサーバ上でコンテナを運用している場合に最適です。
3. Yachtのアップデートを自動化できますか?
はい。最新のイメージをプルし、コンテナを再起動します。
docker-compose pull
docker-compose up -d
これをcronジョブやCI/CDパイプラインに組み込むことが可能です。更新前にステージング環境でテストし、トラブルを防ぎましょう。
まとめ
VPS上にYachtをセルフホストすることで、強力で軽量なコンテナ管理プラットフォームを実現できます。HetznerやContaboなどのコストパフォーマンスに優れたプロバイダーからVPSを選び、信頼性の高い環境を整えましょう。このガイドに従って、Yachtの設定、セキュリティ確保、メンテナンスを効率的に行ってください。
より多くのセルフホスティングアイデアやベストプラクティスについては、awesome-selfhostedリストやr/selfhostedコミュニティを参考にしてください。ハッピーセルフホスティング!