🐣 はじめに
前回、リバースプロキシの概要を簡単に紹介しました。今回は、実際にローカル環境でDockerを使ってリバースプロキシツール『Zoraxy』をセットアップし、具体的な設定を試してみます。
まずは手元のPCで安全にテストしてみましょう!
📋 概要
今回の記事では、以下の内容を順番に実施します。
- Docker Desktopのインストール
- Zoraxyのセットアップ
- Zoraxy設定ファイルのローカル保存方法
- リバースプロキシの設定と動作確認
🐳 Docker Desktopをインストール
Dockerを利用するにはDocker Desktopが必要です。以下のページからインストールできます。
警告
各種ソフトウェアのダウンロードやインストールについては、自己責任でお願いします。
インストール後、以下のコマンドを実行してDockerが正常に動作しているか確認します。
docker --version
バージョン番号が表示されればOKです!
🚀 Zoraxyをローカルでセットアップ
Docker Desktopが正常に動作していることを確認後、以下のコマンドでZoraxyをセットアップします。
git clone https://github.com/tobychui/zoraxy
cd ./zoraxy/docker/
docker compose up -d
📂 Zoraxyの設定ファイルをローカルに永続的に保存
Dockerの再起動後も設定が消えないように、docker-compose.yml
を以下の内容で修正します。
version: '3'
services:
zoraxy:
image: zoraxydocker/zoraxy:latest
container_name: zoraxy
restart: unless-stopped
ports:
- 80:80
- 443:443
- 8000:8000
volumes:
- ./zoraxy-config:/opt/zoraxy/config # 設定ファイルをローカル保存
- ./zoraxy-data:/app/data # データベース、ログ等をローカル保存
- /var/run/docker.sock:/var/run/docker.sock
- /etc/localtime:/etc/localtime
extra_hosts:
- "host.docker.internal:host-gateway"
environment:
FASTGEOIP: "true"
変更後、Dockerを再起動します。
docker compose down
docker compose up -d
これで設定がローカルPCのzoraxy-config
フォルダ内に保存されます。
🔑 Zoraxyの管理画面にアクセス
Dockerコンテナが起動したら、ブラウザでZoraxyの管理画面にアクセスします。
- 管理画面URL:
http://localhost:8000
初回ログイン時にユーザーアカウントの作成が求められます。任意のユーザー名とパスワードを設定しましょう。
🌐 Zoraxyでリバースプロキシ設定をする
Zoraxyにログイン後、『HTTP Proxy』または『Create Proxy Rules』をクリックして以下のように設定します。
項目 | 設定例 |
---|---|
Matching Keyword / Domain | test.local |
Target IP Address or Domain Name with port |
192.168.1.50:8080 (例:同じLAN内にある別のラズパイやWebサーバーのIP:Port) |
Proxy Target require TLS Connection | チェックなし |
設定後、『Create Endpoint』をクリックして保存します。
🖥️ ローカル環境でドメイン名を設定する
ローカル環境のテスト用にドメイン名「test.local」を使います。hostsファイルを編集して設定します。
- Windowsの場合、管理者権限で以下のファイルを編集します。
C:\Windows\System32\drivers\etc\hosts
hostsファイルの末尾に以下を追加します。
127.0.0.1 test.local
これでブラウザからhttp://test.local
でアクセスすると、Zoraxyを通じて設定した内容に接続できます。
✅ 動作確認
設定が完了したら、ブラウザでhttp://test.local
にアクセスし、リバースプロキシが正しく動作することを確認しましょう。
📖 今回保存したZoraxyの設定ファイルの構成
保存された設定ファイルは以下の構成になっています。
-
config.json
:基本的なサーバー設定(管理画面のログイン情報など) -
rules.json
:リバースプロキシの設定(設定したドメインや転送先) -
tls.json
:SSL設定(本番環境で使用する場合に重要)
これらのファイルを使えば、本番環境への設定移行も簡単です。
⚠️ 注意
注意: 本記事はローカル環境でのテスト用です。本番環境への設定方法については次回以降の記事で詳しく説明します。
🚩 次回予告
次回は、本番環境(Linux)でZoraxyを利用したリバースプロキシの構築方法を詳しく解説します。
お楽しみに!