我有一个类似的问题,如何访问外部的领事UI,但我不能使网络选项的组合工作正确。
我在OSX上使用的是Docker for Mac,而不是老的Docker机器,也使用了官方的Consuler Docker镜像,而不是Progrium/Docker镜像。
我可以使用以下方法启动一个3节点服务器集群
docker run -d --name node1 -h node1 consul agent -server -bootstrap-expect 3
JOIN_IP="$(docker inspect -f '{{.NetworkSettings.IPAddress}}' node1)"
docker run -d --name node2 -h node2 consul agent -server -join $JOIN_IP
docker run -d --name node3 -h node3 consul agent -server -join $JOIN_IP
到目前为止还不错,他们互相联系,工作很好。现在我想启动一个代理,并通过它查看UI。
我尝试了一堆-client和-bind的组合,它们似乎是这一切的关键。使用
docker run -d -p 8500:8500 --name node4 -h node4 consul agent -join $JOIN_IP -ui -client=0.0.0.0 -bind=127.0.0.1
docker exec -t node4 consul members
Node Address Status Type Build Protocol DC
node1 172.17.0.2:8301 alive server 0.7.1 2 dc1
node2 172.17.0.3:8301 alive server 0.7.1 2 dc1
node3 172.17.0.4:8301 alive server 0.7.1 2 dc1
node4 127.0.0.1:8301 alive client 0.7.1 2 dc1
2016/12/19 18:18:13 [ERR] memberlist: Failed to send ping: write udp 127.0.0.1:8301->172.17.0.4:8301: sendto: invalid argument
如果我尝试-bind=My Box的外部IP,它将无法启动,
Error starting agent: Failed to start Consul client: Failed to start lan serf: Failed to create memberlist: Failed to start TCP listener. Err: listen tcp 192.168.1.5:8301: bind: cannot assign requested address
我还尝试映射所有其他端口,包括udp端口(-p8500:8500-p8600:8600-p8400:8400-p8300-8302:8300-8302-p8600:8600/UDP-p8301-8302:8301-8302/udp),但这没有任何改变。
我如何加入一个节点到这个集群并查看UI?
尝试使用Consul0.7.2版本,并使用以下语法启动代理(从0.7.2开始测试,到0.8.0结束):
$docker run-d-p 8500:8500--name node4-h node4领事代理-join$JOIN_IP-ui-client=0.0.0.0-bind='{{GetPrivateIP}}'
更改是-bind
的参数,此时consult将呈现私有IP地址的IP地址。其他模板参数记录在hashicorp/go-sockaddr
中。
当我在我的本地机器上运行consul和bootstrap.properties中具有以下属性的Spring Boot客户端时,我可以看到它连接、发现服务并能够使用服务发现从一个服务连接到另一个服务。Bootstrap.properties: 但是现在,我在 openshift 上安装了领事,提供了通往它的路线。我可以浏览到领事UI,并看到领事服务已注册。但是当我尝试将在本地主机上运行的客户端连接到
在WSL 2上,远程访问运行在docker容器中的jupyter笔记本是否有一般方法? 仅供参考,WSL2(Ubuntu 20.04)是按照以下说明安装的: https://ubuntu.com/blog/getting-started-with-cuda-on-ubuntu-on-wsl-2
问题内容: 我已经创建了一个Docker映像来测试Angular应用程序,但是无法从主机连接到Docker容器中正在运行的应用程序。 该映像是使用具有以下内容的Dockerfile创建的:EXPOSE 4200 8080 80 我使用以下命令运行docker容器:docker run -ti -p 4200:4200 angulardev / bin / bash 在容器内,我创建Angular应
构建了Docker映像,但当我要运行它时,它显示以下错误: 我的操作系统是Ubuntu18.04.1LTS,我使用docker build-t doc-service和docker run doc-service。 这是我的DockerFile: 有人能帮我吗?
问题内容: 我正在OSX上尝试使用docker beta,主要用于Symfony开发,但是挂载的速度非常慢。即使对于香草Symfony项目,页面加载时间也只有6秒。难以忍受!有没有人找到解决此问题的方法?试图摆脱无业游民,但我只是找不到任何合理的方法来使用docker。 问题答案: 显然,目前有一种解决方法: https://forums.docker.com/t/file-access-in-m
问题内容: 我有Jenkins作业的阶段,可以使用docker测试和部署我的nodejs,我在端口3000上运行docker,但是当我尝试浏览我的docker时,它不起作用,并且我的docker没有运行 这是我的Jenkinsfile Dockerfile: 我在ubuntu服务器上通过docker- compose运行Jenkins,是我丢失还是出错了?因为我的目标是使用Jenkins来测试我的