我一直坚持让端口映射与我构建的 Docker 实例一起使用。curl localhost在 docker 容器中显示应用程序工作正常,但来自主机的curl 返回:
* Rebuilt URL to: 127.0.0.1/
* Hostname was NOT found in DNS cache
* Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 80 (#0)
> GET / HTTP/1.1
> User-Agent: curl/7.35.0
> Host: 127.0.0.1
> Accept: */*
>
* Empty reply from server
* Connection #0 to host 127.0.0.1 left intact
curl: (52) Empty reply from server
Run Code Online (Sandbox Code Playgroud)
我已经用标志暴露了端口-p。我尝试过映射各种不同的端口。我该如何调试这个?端口映射有哪些常见问题?
如果你在curl容器之外做 - 它不会起作用。如果我理解正确的话,那么你有几种变体:
在Docker Inspect上使用 command docker inspect --format='{{range $p, $conf := .NetworkSettings.Ports}} {{$p}} -> {{(index $conf 0).HostPort}} {{end}}' $INSTANCE_ID- more 。
在Docker Port上使用 command docker port $CONTAINER_NAME-more 。
执行命令docker inspect -f '{{ .NetworkSettings.IPAddress }}' <CONTAINER_NAME>。它应该显示您的内部 IP 地址,然后尝试curl <IP_FROM_COMMAND>:<PORT>。
| 归档时间: |
|
| 查看次数: |
6558 次 |
| 最近记录: |