無題38_20191222022635

Macでdockerのチュートリアルでlocalhostに繋げない問題

Dockerよくわかんないのでチュートリアルやってたものの、やっぱりわからなくなったので備忘録として

Dockerって?

いろいろ調べてみたんですが、自分なりのDockerの解釈は、仮想環境管理ツール。pyenvとかrbenvとかがやっていることをもっと低いレイヤーで行なっているという風に落ち着いています。

詰まったこと

nginxに接続できない

開発環境はMacOS Catalina 10.51.1です

こちらのQiitaを参考に環境作ってみたけれど、どうしても以下のエラーが返ってくる

$ curl http://localhost:80/
curl: (7) Failed to connect to localhost port 80: Connection refused

調べてみるとstackoverflowに同様の人がいた

サイトには

Try
curl -XGET `docker-machine ip`:80

とあるので、試してみる。

$ curl -XGET 192.168.99.100:80
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
   body {
       width: 35em;
       margin: 0 auto;
       font-family: Tahoma, Verdana, Arial, sans-serif;
   }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>
<p>For online documentation and support please refer to
<a href="http://nginx.org/">nginx.org</a>.<br/>
Commercial support is available at
<a href="http://nginx.com/">nginx.com</a>.</p>
<p><em>Thank you for using nginx.</em></p>
</body>
</html>

そしたら動いた!!

結論

このアドレスは、Macにインストールした、Virtualbox上にたてたVMのアドレスだったわけで、localhostではなくVMのIPを使っていたらしい。頭の中ではこんなイメージ

無題36_20191222020207

なのでVMのIPアドレスを使ってあげることで解決解決!
Docker完全に理解したい。。。。。

参考文献


いいなと思ったら応援しよう!