Webアプリをリバースプロキシで束ねるTweet下記の図のように、ウェブブラウザからのアクセスを一つのNginxコンテナで待ち受け、各種アプリにリバースプロキシする構成を組み立てる例を紹介します。Encryptのcertbotはインストールしてある前提です。例としてRedmineのコンテナを作ることにします。appsネットワーク作成ホストコンテナからアプリコンテナへ橋渡しをするためのネットワークを作成します。appsホストコンテナ作成Nginx公式のイメージから作るためのdocker-compose.ymlを書きます。networksには先ほど作成したappsを記入します。trueconf.dディレクトリのdefailt.confを下記のような感じで書きます。SSL証明書取得のための記述だけです。}}SSL証明書の取得アプリの準備をする前にSSL証明書を取得します。ホストコンテナを起動しましょう。-dあとは下記のコマンドで一発です。/path/toは先にバインドしたディレクトリへのパスです。docker-compose.ymlを書きます。こちらもappsのネットワークにリンクさせます。trueアプリ用のserverディレクティブを書く先ほどvolumesで指定したconf.d直下にredmine.confを作成します。ここで、proxy_passにredmineを直接指定すると、ホストコンテナより先にRedmineのコンテナが起動していないと、ホスト名解決ができなくなってしまいます。複数のアプリコンテナを用意した場合に、すべて先に起動する必要がでてきてしまいます。これを回避するために、リゾルバを指定して動的にホスト名を解決するようにします。}}あとはホストコンテナの再起動をして、アプリコンテナを立ち上げて完了です。SSLSNSでもご購読できます。TwitterでフォローするFeedlyでフォローするたかおファン(surface0)1983年生まれ。趣味はエレキギターなど。最近やってるゲームはWoWs、プリコネ、デレステ。