Tag: docker etcd

尝试访问Docker容器内的etcd时,获取“连接被拒绝”

我想从一个正在运行的Docker容器中访问etcd。 当我跑步 curl http://172.17.42.1:4001/v2/keys 我明白了 curl: (7) Failed to connect to 172.17.42.1 port 4001: Connection refused 我有四个其他主机,这工作正常,但在这台机器上的每个容器都有这个问题。 我真的不知道发生了什么,我不知道如何debugging它。 我的etcd环境variables是 ETCD_ADVERTISE_CLIENT_URLS=http://10.242.10.2:2379 ETCD_DISCOVERY=https://discovery.etcd.io/<token_removed> ETCD_INITIAL_ADVERTISE_PEER_URLS=http://10.242.10.2:2380 ETCD_LISTEN_CLIENT_URLS=http://10.242.10.2:2379,http://127.0.0.1:2379,http://0.0.0.0:4001 ETCD_LISTEN_PEER_URLS=http://10.242.10.2:2380 我也可以从主机访问etcd curl http://localhost:4001/v2/keys 所以当从容器路由到主机时似乎有一些错误。 但我无法弄清楚它是什么。 任何人都可以指向正确的方向吗?

etcd – 是否可以使用etcd设置pubsub?

我想设置etcd / redis来存储configuration参数,适用于所有的docker集装箱(现在,只在一个主机内)。 非常需要pub / sub机制 – 这样发出某些命令很容易(比如'对所有容器做'git pull','禁用/启用某些常用function'等)。 我真的很喜欢etcd(基于OOB curl的set / get,17MB docker镜像),但是我现在不需要etcd的各种可用性,服务发现function – 可能是以后的。 据我所知,没有pub / sub api与etcd(看密钥是最接近的)。 请指教一个pub / sub机制是否可以有效地使用etcd来实现。 否则我现在可以继续使用redis。