メインコンテンツまでスキップ

別サーバーへのインストール

別サーバーへのインストールとは、Remnawave Panel とは異なるサーバーにサブスクリプションページをインストールすることを意味します。

ステップ 1 - .env ファイルの準備

警告

Remnawave Panel がインストールされているサーバーでこの変更を行ってください。

/opt/remnawave/.env ファイルを編集し、SUB_PUBLIC_DOMAIN をサブスクリプションページのドメイン名に変更します。

.env ファイルの編集
cd /opt/remnawave && nano .env

SUB_PUBLIC_DOMAIN をサブスクリプションページのドメイン名に変更します。ドメイン名は http または https なしで指定する必要があります。

.env ファイルの内容
SUB_PUBLIC_DOMAIN=subscription.domain.com

Remnawave Panel コンテナを再起動することを忘れないでください:

cd /opt/remnawave && docker compose down remnawave && docker compose up -d && docker compose logs -f

ステップ 2 - docker-compose.yml ファイルの作成

警告

このステップ以降のステップは別のサーバーで実行してください!

警告

サブスクリプションページをインストールするサーバーに Docker がインストールされていることを確認してください。

docker-compose.yml ファイルの作成
mkdir -p /opt/remnawave/subscription && cd /opt/remnawave/subscription && nano docker-compose.yml
docker-compose.yml ファイルの内容
services:
remnawave-subscription-page:
image: remnawave/subscription-page:latest
container_name: remnawave-subscription-page
hostname: remnawave-subscription-page
restart: always
env_file:
- .env
ports:
- '127.0.0.1:3010:3010'
networks:
- remnawave-network

networks:
remnawave-network:
name: remnawave-network
driver: bridge
external: false

次に .env ファイルを作成します:

.env ファイルの作成
mkdir -p /opt/remnawave/subscription && cd /opt/remnawave/subscription && nano .env

Remnawave ダッシュボードで API トークンを作成します。Remnawave 設定 → API トークン。

以下の内容を .env ファイルに貼り付けます:

APP_PORT=3010
REMNAWAVE_PANEL_URL=https://remnawave.panel.com
REMNAWAVE_API_TOKEN=API_TOKEN_FROM_REMNAWAVE

remnawave.panel.com をパネルのドメイン名に置き換えてください。

完全な .env ファイルリファレンス
.env ファイル
APP_PORT=3010

### Remnawave パネル URL、http://remnawave:3000 または https://panel.example.com が使用可能
REMNAWAVE_PANEL_URL=https://panel.example.com
REMNAWAVE_API_TOKEN=API_TOKEN_FROM_REMNAWAVE

# カスタムルートパスで提供する場合、例えば: CUSTOM_SUB_PREFIX=sub
# 先頭/末尾に / を付けないでください
CUSTOM_SUB_PREFIX=

# Marzban リンクのサポート
MARZBAN_LEGACY_LINK_ENABLED=false
MARZBAN_LEGACY_SECRET_KEY=


# "Caddy with security" アドオンを使用している場合、X-Api-Key をここに配置できます。
CADDY_AUTH_API_TOKEN=

# Cloudflare Zero Trust でパネルを保護している場合、セキュリティをバイパスするためにこれらの変数を使用してください。
CLOUDFLARE_ZERO_TRUST_CLIENT_ID=
CLOUDFLARE_ZERO_TRUST_CLIENT_SECRET=

ステップ 3 - コンテナの起動

コンテナの起動
docker compose up -d && docker compose logs -f

ステップ 4 - リバースプロキシの設定

危険

Remnawave とそのコンポーネントはサブパスでの提供をサポートしていません。(例:location /subscription {

ドメインまたはサブドメインのルートパスで提供する必要があります。

カスタムパスには CUSTOM_SUB_PREFIX パラメータを使用できます。

Caddy

Caddy 設定

/opt/remnawave/caddy ディレクトリに Caddyfile というファイルを作成します。

mkdir -p /opt/remnawave/caddy && cd /opt/remnawave/caddy && nano Caddyfile

以下の設定を貼り付けます。

警告

REPLACE_WITH_YOUR_DOMAIN をサブスクリプションページのドメイン名に置き換えてください。

以下の設定を確認し、赤くハイライトされた行を探してください。

Caddyfile
https://SUBSCRIPTION_PAGE_DOMAIN {
reverse_proxy * http://remnawave-subscription-page:3010
}
:443 {
tls internal
respond 204
}
警告

SUBSCRIPTION_PAGE_DOMAIN をあなたのドメイン名に置き換えてください。

以下の設定を確認し、緑にハイライトされた行を探してください。

docker-compose.yml の作成

/opt/remnawave/caddy ディレクトリに docker-compose.yml ファイルを作成します。

cd /opt/remnawave/caddy && nano docker-compose.yml

以下の設定を貼り付けます。

docker-compose.yml
services:
caddy:
image: caddy:2.9
container_name: 'caddy'
hostname: caddy
restart: always
ports:
- '0.0.0.0:443:443'
- '0.0.0.0:80:80'
networks:
- remnawave-network
volumes:
- ./Caddyfile:/etc/caddy/Caddyfile
- caddy-ssl-data:/data

networks:
remnawave-network:
name: remnawave-network
driver: bridge
external: true

volumes:
caddy-ssl-data:
driver: local
external: false
name: caddy-ssl-data

コンテナの起動

docker compose up -d && docker compose logs -f -t

ステップ 5 - 使用方法

サブスクリプションページは https://subdomain.panel.com/<shortUuid> で利用できます。

サブスクリプションページの設定(オプション)

Remnawave ダッシュボードのサブページビルダーでサブスクリプションページをカスタマイズできます。これにより以下が可能です:

  • さまざまな VPN アプリのサポートを追加する
  • 複数の言語でテキストと説明をカスタマイズする
  • 独自のブランディングを追加する(ロゴ、会社名、サポートリンク)
  • 「おすすめ」として表示されるアプリを設定する