きり丸の技術日記

技術検証したり、資格等をここに残していきます。

Basic認証込みのNGINXイメージを扱う(beevelop/nginx-basic-auth)

簡単にBasic認証を実装したり検証したりするためにNGINXを使用しつつ、ついでにBasic認証まで含めているDockerイメージがあったので素振りしました。

環境

  • Docker
    • 26.0.0
  • beevelop/nginx-basic-auth

対応

localhost:80にアクセスしたらBASIC認証がかかっており、認証成功したらlocalhost:8080で公開しているサイトに対してリダイレクトしている例です。BASIC認証はデフォルトで次のパスワードになっています。

  • id
    • foo
  • password
    • bar
services:
  web:
    image: dockercloud/hello-world
  auth:
    image: beevelop/nginx-basic-auth
    ports:
      - 8080:80
    links:
      - web:web

設定できる環境変数は少ないので、Docker ImageのGitHubを読むと確認できます。

備考

クラスメソッド株式会社様が公開しているページもあったのですが、記事で使用しているイメージのquay.io/dtan4/nginx-basic-auth-proxyが古すぎるのでエラーで起動しませんでした。今回紹介したイメージは2023年10月19日に最新がプッシュされているので、イメージが古いということは無さそうです。

docker run -d -p 80:80 quay.io/dtan4/nginx-basic-auth-proxy
Unable to find image 'quay.io/dtan4/nginx-basic-auth-proxy:latest' locally
latest: Pulling from dtan4/nginx-basic-auth-proxy

docker: [DEPRECATION NOTICE] Docker Image Format v1 and Docker Image manifest version 2, schema 1 support is disabled by default and will be removed in an upcoming release. Suggest the author of quay.io/dtan4/nginx-basic-auth-proxy:latest to upgrade the image to the OCI Format or Docker Image manifest v2, schema 2. More information at https://docs.docker.com/go/deprecated-image-specs/.
See 'docker run --help'

終わりに

BASIC認証を元に検証したい内容があったのですが、Dockerイメージで最初からBASIC認証がかかっているとありがたいですね。

普通に調べるとNGINXの設定を頑張って設定する記事しか見つかりませんでした。もちろん、正攻法なのでこちらの記事が多いことはいいことですが。

簡単に検証できる環境ができてうれしいです。

参考情報