簡體   English   中英

主機模式和橋接模式有什么區別?

[英]What's the different between host mode and bridge mode?

我用host mode運行mycontainer的時候不行,但是bridge mode可以,請問這兩種模式有什么不同?

host mode運行: docker run --name=zhiwenyi --net=host -d [image]

bridge mode運行: docker run --name=zhiwenyi -d -p 35229:35229 [image]

Dockerfile:

FROM java:8
VOLUME /data/log/upload
COPY target/upload_V6_20220722.jar upload.jar
EXPOSE 35229
RUN bash -c "touch /upload.jar"
ENTRYPOINT ["java","-Xmx512m","-Xms512m","-jar","-Duser.timezone=GMT+08","-Dfile.encoding=utf-8","upload.jar"]

bridge mode ,我向myip:35229/path發送一個post request ,它運行良好。

host mode ,同樣的請求,它顯示我connection time out

供應

  1. 操作系統centos 7.9
  2. Docker20.10.17

如果您使用主機模式,它會禁用容器的網絡命名空間。

Docker 上下文中的橋接網絡采用軟件橋接來提供與未鏈接到該橋接網絡的容器的隔離,同時啟用連接到同一橋接網絡的容器之間的通信。

使用主機網絡驅動程序的容器的網絡堆棧與 Docker 主機不分離。 例如,如果您使用主機網絡並運行一個綁定到端口 80 的容器,則該容器的應用程序將可以在主機的 IP 地址上的端口 80 上訪問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM