VPSでNginx Proxy Managerをセルフホストする方法(完全ガイド)
Nginx Proxy Managerは、Webインターフェースを通じてNginxリバースプロキシを管理できる強力なツールです。個人プロジェクトの運用や複数のアプリケーションのトラフィック管理など、シンプルかつ効率的に作業を進めたい方に最適です。このガイドでは、VPSにNginx Proxy Managerをインストール・設定する手順をご紹介します。
なぜNginx Proxy Managerを使うのか?
Nginx Proxy Managerにはセルフホスティング環境に便利な機能が多数あります:
- Webインターフェース:プロキシ、ホスト、SSL証明書の管理に便利なGUI。
- SSL管理:Let’s Encryptを利用したSSL証明書の簡単管理。
- アクセス制御:役割に基づいたアクセスでアプリケーションを保護します。
おすすめのVPSプロバイダー
セルフホスティングを行うには適切なVPSプロバイダーの選択が重要です。以下は主要な選択肢の比較です:
| プロバイダー | 料金(月額) | メモリ | ストレージ |
|---|---|---|---|
| Contabo VPS | 5.99 EUR | 8 GB | 200 GB SSD |
| Hetzner Cloud | 4.15 EUR | 8 GB | 240 GB NVMe |
| DigitalOcean | 6 USD | 8 GB | 160 GB SSD |
| Vultr | 6 USD | 8 GB | 160 GB SSD |
| Linode (Akamai) | 5 USD | 8 GB | 160 GB SSD |
詳細なVPS比較については、こちらのガイドをご覧ください。
前提条件
作業を始める前に、以下の準備をしてください:
- Ubuntu 20.04または互換性のあるLinuxディストリビューションを動かしているVPSインスタンス。
- VPSを指すドメイン名(例:
example.com)。 - LinuxコマンドラインとDockerの基礎知識。
インストールのステップバイステップガイド
ステップ1:VPSへのアクセス
まず、SSHを使ってVPSに接続します。your_userとyour_ipはご自身の情報に置き換えてください:
ssh your_user@your_ip
ステップ2:DockerとDocker Composeのインストール
Nginx Proxy ManagerはDockerを使って展開します。VPSにDockerとDocker Composeをインストールしましょう。以下のコマンドを実行してください:
sudo apt update
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo apt update
sudo apt install -y docker-ce
sudo systemctl start docker
sudo systemctl enable docker
続いてDocker Composeをインストールします:
sudo apt install -y docker-compose
ステップ3:Docker Composeファイルの作成
Nginx Proxy Manager用のディレクトリを作成し、その中に移動します:
mkdir nginx-proxy-manager
cd nginx-proxy-manager
次にdocker-compose.ymlファイルを作成します:
version: '3'
services:
app:
image: jc21/nginx-proxy-manager
container_name: nginx-proxy-manager
restart: always
ports:
- "80:80"
- "443:443"
- "81:81"
environment:
DB_SQLITE_FILE: "/data/database.sqlite"
volumes:
- ./data:/data
ステップ4:Nginx Proxy Managerの起動
次のコマンドを実行して、Dockerコンテナを起動します:
sudo docker-compose up -d
このコマンドはイメージをダウンロードし、Nginx Proxy Managerをデタッチモードで起動します。
ステップ5:Webインターフェースにアクセス
コンテナが稼働したら、ブラウザからhttp://your_ip:81にアクセスしてください。
デフォルトの認証情報は以下の通りです:
- メールアドレス:
[email protected] - パスワード:
changeme
ログイン後は、すぐにパスワードを変更してください。
ステップ6:プロキシホストの設定
Webインターフェース上の「Proxy Hosts」タブから、新しいホストを作成してトラフィックをセルフホストしたアプリケーションに転送します。基本的な操作は以下の通りです:
- 「Add Proxy Host」をクリック。
- ドメイン名(例:
app.example.com)を入力。 - アプリケーションのホスト名/IPとポートを入力。
- 必要に応じてSSL設定を行い、「Save」をクリック。
よくある質問
DigitalOceanに特化してNginx Proxy Managerをインストールするにはどうしたらいいですか?
DigitalOceanにNginx Proxy Managerをインストールする手順は、このガイドの内容と同じです。環境に依存しない手順となっており、Ubuntu 20.04のVPSを用意し、SSHでアクセス、DockerとDocker Composeをインストールした後、Docker Composeの設定を行えば完了です。簡単にトラフィック管理が可能です。
Nginx Proxy Managerは複数のドメインに対応していますか?
はい、Nginx Proxy Managerは複数ドメインやサブドメインの管理に対応しています。Webインターフェース上で複数のプロキシホストを作成し、それぞれのドメインから異なるアプリケーションにリクエストを転送できます。この機能は、複数プロジェクトやサービスを1つのVPSで管理したい開発者にとって特に便利です。ただし、DNSレコードがVPSのIPアドレスを指すように設定しておく必要があります。
Nginx Proxy Managerにアクセスできない場合はどうしたらいいですか?
インストール後にアクセスできない場合は、以下を確認してください:
sudo docker psを実行して、コンテナが動作していることを確認。- VPSのファイアウォール設定で、ポート80、443、81が開放されているか確認。
- ドメインのDNS設定が正しくVPSのIPアドレスに解決しているか再確認。必要に応じて
sudo docker-compose restartでコンテナを再起動してください。
このガイドの手順に従えば、VPS上にNginx Proxy Managerを効果的にインストール・設定でき、セルフホストをスムーズに行えます。コミュニティのサポートや他のプロジェクトについては、r/selfhosted や awesome-selfhosted リストも併せてご覧ください。 ---END---