前回は、Windows Server上に Linuxコンテナで動作する webサービスを立ち上げましたが、
今回はこの webサービスに IIS からサブディレクトリ経由でアクセスできるようにします。
背景
前回、Linuxコンテナによる webサービスを Windows Server 上に展開できたのは良かったのですが、
当該 Windows Server には RDWeb関連のページが Internet Information Service (IIS) 上に既に展開されていました。
また、昨今のブラウザは変なポートによる webアクセスに色々うるさく制限されているので、
この辺の情報に疎い人には変なポートへアクセスさせるのはなかなか面倒です。
そこで、今回は指定したサブディレクトリから、dockerで稼働している当該サービスに転送するように設定します。
IIS のインストール
IIS (Internet Information Service) をインストールする。
(今回は省略)
IIS の設定
ARR のインストール
ARR (Application Request Routing) をインストールする。
IIS公式の "Install this extension" からダウンロード, インストールする。
サーバーマネージャーから「インターネット インフォメーション サービス (IIS) マネージャー」を起動,
当該サーバーノードを選択し Application Request Routing Cache
, URL書き換え
が追加されていることを確認する。
リバースプロキシ設定
- インターネット インフォメーション サービス (IIS) マネージャーから目的の サイト を選択する。
URL書き換え
をダブルクリック規則の追加
をクリック, リバースプロキシを選択, 続くウィンドウの受信規則に適切な値を設定- 追加された規則をダブルクリック
- パターン: ^subdir/(.*)
アクセスさせたいサブディレクトリ名を指定 (例では subdir) - URL書き換え: http://127.0.0.1:xxxxx/{R:1}
docker で接続したポート番号を指定(例では xxxxx) 適用
をクリック
- パターン: ^subdir/(.*)
以上で設定が完了しているので接続テストを行う。
http(s)://yourhost/subdir/ で docker コンテナによるサービスにアクセスできれば完了。