簡単に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の設定を頑張って設定する記事しか見つかりませんでした。もちろん、正攻法なのでこちらの記事が多いことはいいことですが。
簡単に検証できる環境ができてうれしいです。