簡體   English   中英

Boot2Docker:通過LAN連接到容器

[英]Boot2Docker: Connect to container over LAN

我在我的Mac上使用Boot2Docker 1.3.0,到目前為止我很高興使用它。 但是現在我想連接到一個http容器(暴露端口8080),而不是從我的本地機器連接到本地網絡中的另一台機器? 如果我在本地做,我只使用http://192.168.59.103:8080所以我使用的是docker主機的ip地址。 這不適用於我本地網絡中的其他計算機,但使用我的mac的ip地址也不起作用。 我很確定這個問題有一些解決方案,但我找不到任何解決方案。 它不是那么難嗎? 我想要的是從本地網絡中的另一台主機向http://[IP-Address-of-mac]:8080發出請求。 我想我必須在我的本地機器上設置一些路由規則嗎? 願有人告訴我該怎么辦? 提前致謝。

最好的祝福

薩沙

您需要從OSX框向前移植到虛擬機

VBoxManage modifyvm "boot2docker-vm" --natpf1 "tcp-port8080,tcp,,8080,,8080";

應該做的伎倆

或者,您可以使用基於ssh的端口轉發:

boot2docker ssh -L 8000:localhost:8000

請參閱https://github.com/boot2docker/boot2docker/blob/master/doc/WORKAROUNDS.md

在Mac上,確定它在本地LAN上使用的IP地址:

$ ifconfig | grep 192
    inet 192.168.1.21 netmask 0xffffff00 broadcast 192.168.1.255
    inet 192.168.59.3 netmask 0xffffff00 broadcast 192.168.59.255

然后前進:

$ boot2docker ssh -vnNTL 192.168.1.21:8080:localhost:8080

現在,在端口8080上進入Mac的請求將被轉發到端口8080上的boot2docker Linux VM。然后,docker服務器將從暴露的端口(VM端口8080)轉發到容器用於httpd的端口(可能是80 )。

請注意,上面的“localhost”是從Linux VM而不是Mac的角度來看,因為那是您正在使用的主機。

暫無
暫無

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

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