Help us understand the problem. What is going on with this article?

nginx-proxyによるマルチドメイン環境

More than 3 years have passed since last update.

nginx-proxyによるマルチドメイン環境

nginx-proxyというdocker imageを使うことで,複数のコンテナによるWebサーバーを構築してみます.これによって,サーバコンテナが複数ある場合に,ドメイン名によってアクセスを振り分けることが出来ます.
nginx-proxy_image.png
このnginx-proxyのすばらしいところは,サーバコンテナの稼働状態に応じて自動で設定が変更されるところです.例えば,サーバコンテナ2が停止した場合,その時点で自動的にnginx-proxyの設定が変更されます.逆にサーバコンテナを追加したくなった場合には,引数を付けて起動するだけで追加出来ます.非常に便利ですね.

構築手順

CentOS7/docker環境が導入されていることを前提とします.

nginx-proxyコンテナの起動

以下のコマンドでimageのダウンロードと起動ができます.

docker run -d -p 80:80 -v /var/run/docker.sock:/tmp/docker.sock jwilder/nginx-proxy

もし,SELinuxが有効な環境であれば,–security-opt=label:type:docker_tをつけることによって,SELinux環境でも動作させることができます.

サーバコンテナの起動

サーバコンテナの環境変数VIRTUAL_HOSTを設定すればnginx-proxy経由で外部に公開することができます.カンマ区切りで複数の指定も可能です.このオプションだけでnginx-proxyが自動的に設定されるので楽です.

-e VIRTUAL_HOST=hoge.com,www.hoge.com

コマンド例は以下のようになります.各サーバコンテナや環境に合わせて設定してください.なお,-p 80:80のようなオプションは不要です.

docker run -e VIRTUAL_HOST=hoge.com -it -d server_image

まとめ

nginxによるproxy環境を構築することができました.簡単に環境構築ができる素晴らしい時代ですね.

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした