導入
Nginx Proxy Managerをインストールします。これは、ユーザーインターフェースを通じてNginxウェブサーバーを簡単に利用できるように設計されたオープンソースソフトウェアです。Nginx Proxy Managerを使用すると、プロキシホスト、リダイレクトホスト、ストリーム、404ホストを作成できます。.
前提条件
- 専用のIPv4アドレスを持つサーバー
- Linuxとターミナルの基礎知識
- ポート80、81、443が利用可能です。
ステップ1 – 新しいサーバーを作成する
Hotsnrなどの新しいサーバーを作成します
サーバーを作成する際は、Docker がサポートするオペレーティングシステムを選択してください。このチュートリアルでは Ubuntu 24.04 を使用します。また、トラフィックが少ないリバースプロキシであれば、標準プランで十分でしょう。.
SSH キーを追加することもお勧めします。.
セキュリティ上の理由から、rootユーザーの使用は推奨されません。代わりに、新しいユーザーを作成し、そのユーザーをsudoグループに追加してください。
ステップ2 – DockerとNginx Proxy Managerをインストールする
- サーバーに接続しています
まず、SSH 経由で新しいサーバーに接続して開始します。.
ssh holu@<server_ip>
- Dockerのインストール
UbuntuにDockerをインストールするには、以下のコマンドを実行してください。サーバーのオペレーティングシステムが異なる場合は、正しいコマンドを確認してください(Dockerのインストール - サポートされているプラットフォームを参照)。.
GPG キーと Docker リポジトリを追加します。
# Uninstall old versions
sudo apt-get purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
# Install prerequisites
sudo apt-get update
sudo apt-get install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
# Add Docker’s official GPG key
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Set up stable repository
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/nullDocker Engine と Docker Compose をインストールします。
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
# Test the installation
docker --version
docker compose versionDocker と Docker Compose を正常にインストールしました。.
ユーザーを Docker グループに追加します。
sudo usermod -aG docker <user>
ユーザー グループを更新するには、ログアウトして再度ログインしてください。.
ここで、Nginx Proxy Manager 自体をインストールする必要があります。.
- Nginxプロキシマネージャーをインストールする
nginx プロキシ マネージャー用の新しいディレクトリを作成します。
mkdir -p npm
cd npm以下のコマンドを実行します。.
# Create a docker-compose configuration file
touch docker-compose.yml
# Editing the file
nano docker-compose.yml以下の内容を下記のファイルに配置します。.
version: '3.8'
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '81:81'
- '443:443'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
# network_mode: 'host'network_mode に関する注意:
- パブリック IP を使用して外部サーバーにプロキシする予定の場合は、network_mode は必要ありません。.
- ローカル Docker コンテナをプロキシし、127.0.0.1 を指定する場合: 、 network_mode が必要であり、行の先頭のハッシュ記号を削除する必要があります。.
ここで、次のコマンドを実行してスタックを起動する必要があります。.
docker compose up -d
これで、次の詳細を使用して管理インターフェイスにアクセスできるようになります。.
203.0.113.1をパブリックIPv4アドレスに置き換えます。
管理UI: http://203.0.113.1:81
デフォルトの管理者ユーザー:
Email: [email protected]
Password: changemeステップ3 – 管理インターフェースにアクセスする
デフォルトユーザーでログインした直後に、プロフィールを編集してパスワードを変更する必要があります。.
管理者ログイン ページは次の画像のようになります。.
ログインしてすべてのデフォルトの詳細を変更すると、「ダッシュボード」を表示できます。.
最初のプロキシホストの作成は比較的簡単です。「ダッシュボード」で、「プロキシホスト」>>「プロキシホストを追加」をクリックします。以下は、ドメイン(proxy.example.com)から管理インターフェースにアクセスするための基本設定のスクリーンショットです。ドメインに、サーバーのパブリックIPv4アドレスを指すDNSレコードが設定されていることを確認してください。.
その後、すべてを安全に保つためにSSL証明書が必要になる可能性が高くなります。以下は、SSLオプションの初期設定のスクリーンショットです。.
「SSLを強制」など、他のオプションも必要に応じてチェックできます。画像ではチェックが入っていませんが、これはこのチュートリアルを読んでいる読者が混乱してチェックが必要だと思い込まないようにするためです。.
新しいエントリを保存すると、設定したドメイン (この例では proxy.example.com) から管理インターフェイスにアクセスできるようになります。.
Nginx プロキシ マネージャーの準備が整い、プロキシ ホストを追加できるようになりました。.
上記のDocker Composeファイルにnetwork_modeを追加した場合、すべてのローカルコンテナの「転送ホスト名/IP」を127.0.0.1に設定できるはずです。例えば、ローカルのWordPress Dockerコンテナの場合は以下のようになります。
holu@tutorial:~/npm$ docker run -p 8080:80 -d wordpress
holu@tutorial:~/npm$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
23bcbfe55c53 jc21/nginx-proxy-manager "/init" 31 minutes ago Up 31 minutes npm-app-1
e9853acea394 wordpress "docker-entrypoint.s…" 22 minutes ago Up 22 minutes 0.0.0.0:8080->80/tcp, :::8080->80/tcp thirsty_greider宛先を http://127.0.0.1:8080 に設定できます。
Docker Compose ファイルに network_mode: 'host' がない場合、宛先をパブリック IP アドレス (この例では 203.0.113.1:8080) に設定する必要があります。.
結果
ここで、Nginx プロキシ マネージャーをインストールする必要があります。.














