docker - 无法从 Web 浏览器访问 docker 容器文件
问题描述
我在 wsl2 上使用 ubuntu,并使用 docker web_examples
-compose 从 github 存储库构建 docker 容器。我需要从我的网络浏览器在容器中添加一个 .sh 文件。
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8d32b48b9f5c web_examples "/bin/sh -c /usr/bin…" 21 hours ago Up About a minute 80/tcp, 3306/tcp web_examples_container
我得到了我的容器的 IP 地址
$ docker inspect 8d32b48b9f5c | grep "IPAddress"
"SecondaryIPAddresses": null,
"IPAddress": "172.17.0.2",
"IPAddress": "172.17.0.2",
我还获得了对容器的 root 访问权限并能够执行 .sh 文件
root@8d32b48b9f5c:/var/www/html# cd /usr/lib/cgi-bin/
root@8d32b48b9f5c:/usr/lib/cgi-bin# ls
examplescript.sh
root@8d32b48b9f5c:/usr/lib/cgi-bin# ./examplescript.sh
现在,当我使用浏览器时,我应该可以从http://172.17.0.2http://172.17.0.2/cgi-bin/examplescript.sh
获取某些内容,但我只是在加载页面时遇到问题,连接超时
我在这里缺少什么,也许是我的本地机器和 docker 之间的 docker brigde 网络?这些是细节
$ docker network ls
NETWORK ID NAME DRIVER SCOPE
b08114f7609f bridge bridge local
624809c979fe host host local
612386680a2a none null local`
$ docker network inspect b08114f7609f
{
"Name": "bridge",
"Id": "b08114f7609f124dfb94189420b1060eaa686879cd94429dafacd2cd035e2986",
"Created": "2021-10-17T16:39:37.5428329Z",
"Scope": "local",
"Driver": "bridge",
"EnableIPv6": false,
"IPAM": {
"Driver": "default",
"Options": null,
"Config": [
{
"Subnet": "172.17.0.0/16"
}
]
},
"Internal": false,
"Attachable": false,
"Ingress": false,
"ConfigFrom": {
"Network": ""
},
"ConfigOnly": false,
"Containers": {
"ed3066c3b8221471ff7da8dfdaa9b56a7f4fe7ba23785f57a5f29f39eca40a6d": {
"Name": "web_examples_container",
"EndpointID": "e75ed6674d03abea991fc58898e657c6b517ec97d15f58bfaca7e4edcc23c959",
"MacAddress": "02:42:ac:11:00:02",
"IPv4Address": "172.17.0.2/16",
"IPv6Address": ""
}
},
"Options": {
"com.docker.network.bridge.default_bridge": "true",
"com.docker.network.bridge.enable_icc": "true",
"com.docker.network.bridge.enable_ip_masquerade": "true",
"com.docker.network.bridge.host_binding_ipv4": "0.0.0.0",
"com.docker.network.bridge.name": "docker0",
"com.docker.network.driver.mtu": "1500"
},
"Labels": {}
}
解决方案
推荐阅读
- tensorflow - tensorflow.python.framework.errors_impl.DataLossError:校验和不匹配
- vim - VIM:删除不均匀缩进的多行的前 x 个非空格字符
- javascript - 更新商店时我的组件不会重新渲染
- ssrs-2008 - 如何按降序对 SSRS 表列组进行排序?
- javascript - 如果参数不为空,则返回值
- c# - C#:如何使用 google.apis.drive.v3 将文件上传到 Google Drive
- symfony-forms - 如何修复“尝试调用名为“createNamedBuilder ...”的未定义方法?
- python-3.x - 获得最近点的有效方法
- c# - 查找谓词参数
- python - 赋值运算符和变量标识符