[英]How can I get a docker container to expose a port while blocking the internet at large?
我想運行一個無法訪問外部互聯網的 docker 容器。 我一直在為此成功使用--network=none
。 但是現在我想從該容器托管一個 Web 服務器,並從外部訪問它。 當我嘗試時,我發現端口映射完全被忽略了:
$ docker run --rm -it -p 8000:8000 --network=none python bash
# python -m http.server
Serving HTTP on 0.0.0.0 port 8000 (http://0.0.0.0:8000/) ...
現在從容器外部:
$ docker port 981f253788ad
$ curl localhost:8000
curl: (7) Failed to connect to localhost port 8000: Connection refused
您可以嘗試使用帶有--internal
選項的自定義網絡,然后將您的容器附加到此網絡:
$ docker network create --internal internal-network
$ docker run --rm -it -p 8000:8000 --network=internal-network python bash
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.