docker/fig:端口转发到来宾计算机在 MacOS 上不起作用
docker/fig: port forwarding to guest machine does not work on MacOS
我正在尝试在此处获取这张无花果图像 运行:https://registry.hub.docker.com/u/harbur/sonarqube/
docker 和 fig 安装正常,两个图像也正常启动(包括应用程序 - 从日志中检查)。
但是,应该有一个端口转发设置,以便我可以从我的主机连接到声纳实例。但是,我无法连接到机器,因为主机 OS 上没有打开任何端口。
有没有人可以提示我做错了什么?
干杯,
马蒂亚斯
$ docker port dockersonarqube_sonarqube_1
443/tcp -> 0.0.0.0:49154
9000/tcp -> 127.0.0.1:9000
$ curl 127.0.0.1:9000
curl: (7) Failed connect to 127.0.0.1:9000; Connection refused
这是无花果配置文件:
postgresql:
image: orchardup/postgresql:latest
environment:
- POSTGRESQL_USER=sonar
- POSTGRESQL_PASS=xaexohquaetiesoo
- POSTGRESQL_DB=sonar
volumes:
- /opt/db/sonarqube/:/var/lib/postgresql
sonarqube:
image: harbur/sonarqube:latest
links:
- postgresql:db
environment:
- DB_USER=sonar
- DB_PASS=xaexohquaetiesoo
- DB_NAME=sonar
ports:
- "127.0.0.1:9000:9000"
- "443"
如果您在 Mac 上使用 boot2docker
,则需要通过 VM 访问该网站。您需要做两件事:
- 通过将
"127.0.0.1:9000:9000"
更改为 "0.0.0.0:9000:9000"
在所有接口上公开 VM 端口。
- 使用 VM 的 IP 连接到服务器,例如
curl $(boot2docker ip 2> /dev/null):9000
除非您真的不喜欢使用 boot2docker IP 而不是 0.0.0.0,否则您不需要在 VM 内处理端口转发。
在 OSX 上使用 boot2docker,您需要设置端口转发。你需要 运行 像这样的东西:
VBoxManage modifyvm "boot2docker-vm" --natpf1 "tcp-port9000,tcp,,9000,,9000";
REF:https://github.com/boot2docker/boot2docker/blob/master/doc/WORKAROUNDS.md
您还需要在 fig.yml 文件中将 127.0.0.1
替换为 0.0.0.0
以便
- "0.0.0.0:9000:9000"
我正在尝试在此处获取这张无花果图像 运行:https://registry.hub.docker.com/u/harbur/sonarqube/
docker 和 fig 安装正常,两个图像也正常启动(包括应用程序 - 从日志中检查)。 但是,应该有一个端口转发设置,以便我可以从我的主机连接到声纳实例。但是,我无法连接到机器,因为主机 OS 上没有打开任何端口。
有没有人可以提示我做错了什么?
干杯, 马蒂亚斯
$ docker port dockersonarqube_sonarqube_1
443/tcp -> 0.0.0.0:49154
9000/tcp -> 127.0.0.1:9000
$ curl 127.0.0.1:9000
curl: (7) Failed connect to 127.0.0.1:9000; Connection refused
这是无花果配置文件:
postgresql:
image: orchardup/postgresql:latest
environment:
- POSTGRESQL_USER=sonar
- POSTGRESQL_PASS=xaexohquaetiesoo
- POSTGRESQL_DB=sonar
volumes:
- /opt/db/sonarqube/:/var/lib/postgresql
sonarqube:
image: harbur/sonarqube:latest
links:
- postgresql:db
environment:
- DB_USER=sonar
- DB_PASS=xaexohquaetiesoo
- DB_NAME=sonar
ports:
- "127.0.0.1:9000:9000"
- "443"
如果您在 Mac 上使用 boot2docker
,则需要通过 VM 访问该网站。您需要做两件事:
- 通过将
"127.0.0.1:9000:9000"
更改为"0.0.0.0:9000:9000"
在所有接口上公开 VM 端口。 - 使用 VM 的 IP 连接到服务器,例如
curl $(boot2docker ip 2> /dev/null):9000
除非您真的不喜欢使用 boot2docker IP 而不是 0.0.0.0,否则您不需要在 VM 内处理端口转发。
在 OSX 上使用 boot2docker,您需要设置端口转发。你需要 运行 像这样的东西:
VBoxManage modifyvm "boot2docker-vm" --natpf1 "tcp-port9000,tcp,,9000,,9000";
REF:https://github.com/boot2docker/boot2docker/blob/master/doc/WORKAROUNDS.md
您还需要在 fig.yml 文件中将 127.0.0.1
替换为 0.0.0.0
以便
- "0.0.0.0:9000:9000"