nginxをDockerで使おうと思ったら初っ端からこのサイトにアクセスできませんとなった。
環境
Dodker Toolbox on Windowsを使ってます。
Windows 10 Homeです。
前準備
nginxのイメージは公式のものを使用しました。
まずは以下のコマンドでnginxのイメージを
①取得して
②-pでportフォワーディングの設定
③-dでバッググランドで動作させる
立ち上げる。
docker run --name some-nginx -d -p 8080:80 nginx
本来であれば、この状態で
http://localhost:8080をすればwelcomeページが表示されるはずだった。
しかし、このサイトにアクセスできません
と表示された。
何が原因か調べる
こちらが参考になりそうだったので、それを見て進めていった。
Macでの確認とのことでしたが、Docker Toolbox on Windows でも同様の現象が発生してました。
参考ページのほうが詳しいので、内容は参考ページをご確認ください。
以下は自分用のメモです。
コンテナーの状態を確認
ちょっと見にくいけど、コンテナーが起動していることは確認できた。
あと、この後で確認予定だったportフォワーディングもできていることが確認できる。(0.0.0.0:8080->80という部分)
$ docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS
NAMES
c5ec1db40ac9 nginx "nginx -g 'daemon of" 30 minutes ago Up 30 minutes 0.0.0.0:8080->80
/tcp ng-sample
curlでhttpアクセス確認
接続できないことは確認できた。
curl http://localhost:8080
curl: (7) Failed to connect to localhost port 8080: Connection refused
nginxのログの確認
これどうやってやるんだろうなーと思ってたら、参考サイトに書いてあって助かりました。
$ docker logs ng-sample
特に何も表示されなかった。
コンテナー内部でcurlを投げて確認
以下のコマンドでコンテナーに繋げて、curlインストールして、curl投げるところまでやってます。
docker exec -it ng-sample sh
#apt update
#apt install curl
# curl http://localhost:80/
結果は正常に表示されてた。
docker-machine lsでDockerの環境を確認
$ docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
default * virtualbox Running tcp://192.168.99.100:2376 v19.03.5
上記のIPと設定したPort
http://192.168.99.100:8080/
にアクセスするとWeolcomeページが表示された。
このIPアドレスについては以下でも言及されていた。
https://stackoverflow.com/questions/36477438/can-not-access-nginx-container-on-a-local-windows-machine
ディスカッション
コメント一覧
まだ、コメントがありません