🔥

Ubuntu22.04にNginX Proxy Managerを構築して、リバプロしてみる

2022/11/26に公開

諸事情でリバースプロキシを構築しないといけなければならなくなったので、その備忘録です。

Dockerのインストール

Dockerのインストールについては、別の記事でまとめているので、そちらをご覧ください。
https://zenn.dev/seiwell/articles/7ca8a8c4bda10c

Nginx Proxy Managerのインストール

続いて、本題である「Nginx Proxy Manager」の構築を行っていきます。

適当なディレクトリを作成し、作成したディレクトリに移動します。

mkdir <適当の名前(今回はnginx-proxy)>
cd nginx-proxy

config.jsonを作成していきます。

nano config.json

config.jsonの内容

{
  "database": {
    "engine": "mysql",
    "host": "db",
    "name": "npm",
    "user": "<適当な名前>",
    "password": "<適当なパスワード>",
    "port": 3306
  }
}

続いて、Dockerの設定ファイルを作成していきます。

nano docker-compose.yml

docker-compose.ymlの内容

version: '3'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    ports:
      - '80:80'
      - '81:81'
      - '443:443'
    volumes:
      - ./config.json:/app/config/production.json
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    restart: always
  db:
    image: 'jc21/mariadb-aria:latest'
    environment:
      MYSQL_ROOT_PASSWORD: 'npm'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: '<config.jsonで決めたユーザー名>'
      MYSQL_PASSWORD: '<config.jsonで決めたパスワード>'
    volumes:
      - ./data/mysql:/var/lib/mysql
    restart: always

書いたら、Ctrl+OからのCtrl+Xでnanoエディタを閉じます。

これで、前準備はできたので、起動していきます。

docker compose up -d

初回起動時はダウンロードなどで5分ほどかかりますが、気長に待ちます。

Webからアクセスしてみる

コマンドの実行が完了したら、Webブラウザを開いて、アクセスします。

http://<IPアドレス>:81

初期ユーザー名と初期パスワードは下記の通りです。

ユーザー名: admin@example.com
パスワード:changeme

ログインすると、初期設定が始まります。画面の指示に従って登録していきます。
ユーザープロフィールの登録

パスワードの変更

登録完了後

終わりに

最近は、GUIで手軽に管理できるツールが増えてきて、「簡単な時代だなぁ」と思うようになりました。
うれしい反面、「コマンドでも同じことができるようにならないと」と焦燥感に駆られている今日この頃です。
まあ、駆られるだけでやらないのがオチなんですけどね笑

以上

参考記事

Ubuntu 22.04 LTSへの最新版Dockerのインストール
Docker Compose can't execute: "Command 'docker-compose' not found"
Securing NGinX Proxy Manager

Discussion