![](/img/trans.png)
[英]Make django work with `network_mode: host` in docker-compose
[英]docker compose network_mode: "host" not working
我的 dockerized 應用程序需要訪問本地主機網絡上的某些內容,如果沒有network_mode: "host"
這是不可能的
version: '3.4'
services:
app:
network_mode: "host"
image: node:latest
volumes:
- .:/usr/app
- node_modules:/usr/app/node_modules
working_dir: /usr/app
ports:
- 3000:3000
volumes:
node_modules:
如果我注釋掉network_mode: "host"
我的應用程序可以在http://localhost:3000上完美運行。 如果我重新添加它,它仍然可以運行,但不再可以在http://localhost:3000上訪問。
編輯:我剛剛在 Ubuntu 上測試了一個 hello world,它可以工作,但在 mac 上不行,mac 似乎不能與network_mode: "host"
一起工作
是的,在撰寫本文時, mac肯定存在問題,問題是mac中的 docker 使用容器所在的 linux 虛擬機,因此當您使用network_mode: "host"
時,它僅對 VM 的網絡有效,不適用於您的 Mac:( 更多信息請點擊此處。
作為替代方案,不要使用network_mode: "host"
,而是將其保留在 bridge (默認)中,然后將您的服務配置為使用host.docker.internal:xxxx而不是到達localhost: xxxx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.