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を使っていたらしい。頭の中ではこんなイメージ
なのでVMのIPアドレスを使ってあげることで解決解決!
Docker完全に理解したい。。。。。