Xserver VPSにDockerをインストールしてでWebサーバーを立てるまでの手順
Xserver VPSを契約し、Webサイト公開の準備としてDocker環境を構築しました。今回は、リバースプロキシとして便利な「Nginx Proxy Manager」をDocker上で起動させ、ブラウザから管理画面にアクセスできる状態にするまでの手順をまとめます。
環境構築の途中で、ブラウザからアクセスできず足止めを食らった「Xserver VPS特有のパケットフィルター設定」という失敗談も紹介します。
目次
サーバーへの接続
まずはSSHでVPSにログインします。******.pemとという「SSH秘密鍵ファイル」が保存されたフォルダ上でコマンドプロンプトを起動し進めていきます。XXX.XX.XX.XXX(IPアドレス)は、Xserver VPSの管理画面から確認することができます。
ssh -i ******.pem root@XXX.XX.XX.XXX
Docker と Docker Compose のインストール
UbuntuにDocker環境を構築します。
# パッケージリストの更新 apt update && apt upgrade -y # DockerとDocker Composeをインストール apt install -y docker.io docker-compose # Dockerの起動と自動起動設定 systemctl start docker systemctl enable docker
Nginx Proxy Manager のセットアップ
管理用ディレクトリを作成し、Docker Compose用の設定ファイルを用意します。
mkdir npm && cd npm nano docker-compose.yml
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
コンテナを起動します。
docker-compose up -d
【トラブル発生】管理画面にアクセスできない?
コンテナ起動後、ブラウザから http://XXX.XX.XX.XXX:81 にアクセスしましたが、「応答時間が長すぎます」というエラーで接続できませんでした。
解決策:Xserver VPS側の「パケットフィルター」設定
原因は、Xserver VPS側のファイアウォール(パケットフィルター)でポートが閉じられていたことでした。
- Xserver VPS キャッシュボードへログイン。
- 対象サーバーの 「パケットフィルター」 設定を開く。
- 「フィルター設定」 で以下のポートを許可(追加)。
- Web (80 / 443) を「追加」
- カスタム (TCP 81) を「追加」
おわりに
これで無事に Nginx Proxy Manager の管理画面が表示されるようになりました。土台が完成したので、次は実際にドメインの設定と SSL化を進めていきます。
スポンサーリンク

