Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
3
Help us understand the problem. What is going on with this article?
@kayamin

nginxの動作検証環境をDockerを用いて構築する

手軽に nginx の設定ファイルを修正し,動作確認ができる環境を作成.

ディレクトリ構成
./handson_nginx
├── README.md
├── docker
│   ├── nginx
│   │   ├── Dockerfile
│   │   ├── nginx.conf
│   │   ├── nginx.repo
│   │   └── nginx_with_comment.conf
│   └── springboot
│       └── Dockerfile
├── docker-compose.yml
└── nginx_log
    ├── README.md
    ├── access.log
    └── error.log

何が嬉しい?

  • nginx.conf の設定内容の動作検証を手軽に行うことができる
    • docker-compose を用いて nginx の裏に springboot が存在する環境を手軽に立ち上げられる
    • nginx.conf を変更したら docker-compose コマンドを再度走らせるだけで設定が適用される
    • nginx のエラーは内容は error.log に即座に書き出されるので設定ファイルの何が間違っているのかがすぐに分かる

使用手順

立ち上げてみる
git clone https://github.com/kayamin/handson_nginx.git
docker-compose up -d
docker ps
リクエストを投げてみる
# springboot コンテナへ直接リクエスト
curl -v localhost:8090/hello 

# nginx コンテナに対してリクエスト -> springboot コンテナへプロキシされる
# access.log にログが追加されるので確認
curl -v localhost:80/hello 

# springboot コンテナへ直接リクエスト
curl -v localhost:8090/addtwo/4

# nginx コンテナに対してリクエスト -> rewrite された上で springboot コンテナへプロキシされる
# error.log にリライトのログが追加されるので確認
curl -v localhost:80/foward_proxy2/4/addtwo
nginx.confを修正して反映する
# nginx.conf を好きなように編集する
~

# 再度docker-composeコマンドを実行する
# nginx.conf の修正を検出して nginx イメージが再作成され立ち上がる
docker-compose up -d --build

# nginxコンテナが立ち上がらない場合は何かしらエラーが出ていないか error.log を確認
docker ps

備考

  • springboot 側には /hello, addtwo/{$num} APIのみ用意

参考

所感

3
Help us understand the problem. What is going on with this article?
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
kayamin

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
3
Help us understand the problem. What is going on with this article?