
目次
EL7環境において BoltzMessenger で複数環境に対応するには
BoltzMessenger は、標準インストールでは1サーバあたり1つのインスタンスしか実行しません。 そのため、検証環境と本番環境を分けたい・複数のアプリを1台で対応したい、といった場合は、BoltzMessenger が利用するデータベースと各種設定を、環境分だけ作成いただく必要があります。
以下の手順では、検証環境を新しく構築する手順を紹介します。
DBにデータベースを追加
BoltzMessenger が利用するデータベースを作成するには、boltz-messenger-init コマンドを使います。 このコマンドは、オプション以外に引数を与えると、その名前でデータベースを作成します。 以下の例では boltz_staging というデータベースを、ローカルで動作しているサーバに作成しています。
|
|
BoltzMessenger の設定ファイルをコピー
BoltzMessenger の設定ファイル /etc/boltz-messenger/config.yml をコピーします。 ここでは検証環境の構築が目的なので、ファイル名を config-staging.yml としました。
|
|
コピーしたファイルの、db.name を前の手順で作成したデータベースへ変更します。 また、必要ならデータベースへログインするユーザも登録しておきます。
|
|
boltz-messenger-gatewayをコピーする
boltz-messenger-gateway は管理画面に登録した通知の配信管理サービスです。 このサービスは、config.yml によって参照するデータベースや認証情報を設定しているため、 ファイルの参照を切り替えるためにサービスのコピーが必要です。
以下の例では、staging というサフィックスを付与していますが、任意の名前を指定していただけます。
|
|
終わったらsystemctlでenable & startします。
|
|
管理画面を分離する
管理画面も boltz-messenger-gateway と同じ設定ファイルを参照します。 こちらは Systemd ではなく、環境変数で切り替えるようになります。
|
|
boltz-messenger-admin-staging.conf は以下のように記述してください。
|
|
また、標準でインストールした boltz-messenger-admin.conf も、以下のように修正してください。
|
|
再起動を行えば、/boltz-messenger/ と /boltz-messenger-staging/ の2つ管理画面が利用可能になります。
|
|
Web API / BoltzMessenger Webを分離する
2.2 以降をお使いの場合、アプリ用の API やウェブプッシュ受信画面は、BoltzMessenger Web というパッケージに含まれるようになりました。 こちらをお使いの場合、管理画面と同様な設定を、Web パッケージにも行う必要があります。
|
|
boltz-messenger-web-staging.conf の例です。
|
|
boltz-messenger-web.conf も変更します。
|
|
これで、httpd を再起動すれば反映されます。
制限事項
BoltzMessenger Web を同一ドメインに複数設置した場合、ウェブプッシュ受信画面に関する設定は最後にアクセスした画面のものが有効となり、チャンネル・セグメントの設定が失われます。ウェブプッシュを同一サーバーで動作させる場合はバーチャルホストの定義などでドメインが各画面で変更されるように設定してください。