Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 来自服务器的领事空回复_Docker_Consul - Fatal编程技术网

Docker 来自服务器的领事空回复

Docker 来自服务器的领事空回复,docker,consul,Docker,Consul,我正在尝试启动并运行一个领事服务器集群。我有3个停靠领事服务器在运行,但我无法访问Web UI、HTTP API或DNS $ docker logs net-sci_discovery-service_consul_1 ==> WARNING: Expect Mode enabled, expecting 3 servers ==> Starting Consul agent... ==> Consul agent running! Version: 'v

我正在尝试启动并运行一个领事服务器集群。我有3个停靠领事服务器在运行,但我无法访问Web UI、HTTP API或DNS

$ docker logs net-sci_discovery-service_consul_1
==> WARNING: Expect Mode enabled, expecting 3 servers
==> Starting Consul agent...
==> Consul agent running!
           Version: 'v0.8.5'
           Node ID: 'ccd38897-6047-f8b6-be1c-2aa0022a1483'
         Node name: 'consul1'
        Datacenter: 'dc1'
            Server: true (bootstrap: false)
       Client Addr: 127.0.0.1 (HTTP: 8500, HTTPS: -1, DNS: 8600)
      Cluster Addr: 172.20.0.2 (LAN: 8301, WAN: 8302)
    Gossip encrypt: false, RPC-TLS: false, TLS-Incoming: false

==> Log data will now stream in as it occurs:

    2017/07/07 23:24:07 [INFO] raft: Initial configuration (index=0): []
    2017/07/07 23:24:07 [INFO] raft: Node at 172.20.0.2:8300 [Follower] entering Follower state (Leader: "")
    2017/07/07 23:24:07 [INFO] serf: EventMemberJoin: consul1 172.20.0.2
    2017/07/07 23:24:07 [INFO] consul: Adding LAN server consul1 (Addr: tcp/172.20.0.2:8300) (DC: dc1)
    2017/07/07 23:24:07 [INFO] serf: EventMemberJoin: consul1.dc1 172.20.0.2
    2017/07/07 23:24:07 [INFO] consul: Handled member-join event for server "consul1.dc1" in area "wan"
    2017/07/07 23:24:07 [INFO] agent: Started DNS server 127.0.0.1:8600 (tcp)
    2017/07/07 23:24:07 [INFO] agent: Started DNS server 127.0.0.1:8600 (udp)
    2017/07/07 23:24:07 [INFO] agent: Started HTTP server on 127.0.0.1:8500
    2017/07/07 23:24:09 [INFO] serf: EventMemberJoin: consul2 172.20.0.3
    2017/07/07 23:24:09 [INFO] consul: Adding LAN server consul2 (Addr: tcp/172.20.0.3:8300) (DC: dc1)
    2017/07/07 23:24:09 [INFO] serf: EventMemberJoin: consul2.dc1 172.20.0.3
    2017/07/07 23:24:09 [INFO] consul: Handled member-join event for server "consul2.dc1" in area "wan"
    2017/07/07 23:24:10 [INFO] serf: EventMemberJoin: consul3 172.20.0.4
    2017/07/07 23:24:10 [INFO] consul: Adding LAN server consul3 (Addr: tcp/172.20.0.4:8300) (DC: dc1)
    2017/07/07 23:24:10 [INFO] consul: Found expected number of peers, attempting bootstrap: 172.20.0.2:8300,172.20.0.3:8300,172.20.0.4:8300
    2017/07/07 23:24:10 [INFO] serf: EventMemberJoin: consul3.dc1 172.20.0.4
    2017/07/07 23:24:10 [INFO] consul: Handled member-join event for server "consul3.dc1" in area "wan"
    2017/07/07 23:24:14 [ERR] agent: failed to sync remote state: No cluster leader
    2017/07/07 23:24:17 [WARN] raft: Heartbeat timeout from "" reached, starting election
    2017/07/07 23:24:17 [INFO] raft: Node at 172.20.0.2:8300 [Candidate] entering Candidate state in term 2
    2017/07/07 23:24:17 [INFO] raft: Election won. Tally: 2
    2017/07/07 23:24:17 [INFO] raft: Node at 172.20.0.2:8300 [Leader] entering Leader state
    2017/07/07 23:24:17 [INFO] raft: Added peer 172.20.0.3:8300, starting replication
    2017/07/07 23:24:17 [INFO] raft: Added peer 172.20.0.4:8300, starting replication
    2017/07/07 23:24:17 [INFO] consul: cluster leadership acquired
    2017/07/07 23:24:17 [INFO] consul: New leader elected: consul1
    2017/07/07 23:24:17 [WARN] raft: AppendEntries to {Voter 172.20.0.3:8300 172.20.0.3:8300} rejected, sending older logs (next: 1)
    2017/07/07 23:24:17 [WARN] raft: AppendEntries to {Voter 172.20.0.4:8300 172.20.0.4:8300} rejected, sending older logs (next: 1)
    2017/07/07 23:24:17 [INFO] raft: pipelining replication to peer {Voter 172.20.0.3:8300 172.20.0.3:8300}
    2017/07/07 23:24:17 [INFO] raft: pipelining replication to peer {Voter 172.20.0.4:8300 172.20.0.4:8300}
    2017/07/07 23:24:18 [INFO] consul: member 'consul1' joined, marking health alive
    2017/07/07 23:24:18 [INFO] consul: member 'consul2' joined, marking health alive
    2017/07/07 23:24:18 [INFO] consul: member 'consul3' joined, marking health alive
    2017/07/07 23:24:20 [INFO] agent: Synced service 'consul'
    2017/07/07 23:24:20 [INFO] agent: Synced service 'messaging-service-kafka'
    2017/07/07 23:24:20 [INFO] agent: Synced service 'messaging-service-zookeeper'


$ curl http://127.0.0.1:8500/v1/catalog/service/consul
curl: (52) Empty reply from server
dig @127.0.0.1 -p 8600 consul.service.consul

; <<>> DiG 9.8.3-P1 <<>> @127.0.0.1 -p 8600 consul.service.consul
; (1 server found)
;; global options: +cmd
;; connection timed out; no servers could be reached


$ dig @127.0.0.1 -p 8600 messaging-service-kafka.service.consul

; <<>> DiG 9.8.3-P1 <<>> @127.0.0.1 -p 8600 messaging-service-kafka.service.consul
; (1 server found)
;; global options: +cmd
;; connection timed out; no servers could be reached
我对docker和Concur都比较陌生。我在网上浏览了一下,上面的选项是我对所需内容的理解。任何关于未来道路的建议都是非常受欢迎的

编辑:

docker容器ps的结果-全部:

$ docker container ps --all
CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS              PORTS                                                                                                            NAMES
e0a1c3bba165        consul:latest            "docker-entrypoint..."   38 seconds ago      Up 36 seconds       8300-8302/tcp, 8500/tcp, 8301-8302/udp, 8600/tcp, 8600/udp                                                       net-sci_discovery-service_consul_3
7f05555e81e0        consul:latest            "docker-entrypoint..."   38 seconds ago      Up 36 seconds       8300-8302/tcp, 8500/tcp, 8301-8302/udp, 8600/tcp, 8600/udp                                                       net-sci_discovery-service_consul_2
9e2dedaa224b        consul:latest            "docker-entrypoint..."   39 seconds ago      Up 38 seconds       0.0.0.0:8400->8400/tcp, 8301-8302/udp, 0.0.0.0:8500->8500/tcp, 8300-8302/tcp, 8600/udp, 0.0.0.0:8600->8600/tcp   net-sci_discovery-service_consul_1
27b34c5dacb7        messagingservice_kafka   "start-kafka.sh"         3 hours ago         Up 3 hours          0.0.0.0:9092->9092/tcp                                                                                           net-sci_messaging-service_kafka
0389797b0b8f        wurstmeister/zookeeper   "/bin/sh -c '/usr/..."   3 hours ago         Up 3 hours          22/tcp, 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp                                                               net-sci_messaging-service_zookeeper
编辑:

更新了
docker compose.yml
以包含端口的长格式:

version: '3.2'
services:
  consul1:
    image: "consul:latest"
    container_name: "net-sci_discovery-service_consul_1"
    hostname: "consul1"
    ports:
      - target: 8400
        published: 8400
        mode: host
      - target: 8500
        published: 8500
        mode: host
      - target: 8600
        published: 8600
        mode: host
    volumes:
      - ./etc/consul.d:/etc/consul.d
    command: "agent -server -ui -bootstrap-expect 3 -config-dir=/etc/consul.d -bind=0.0.0.0 -client=127.0.0.1"
  consul2:
    image: "consul:latest"
    container_name: "net-sci_discovery-service_consul_2"
    hostname: "consul2"
    command: "agent -server -join=consul1"
    links:
      - "consul1"
  consul3:
    image: "consul:latest"
    container_name: "net-sci_discovery-service_consul_3"
    hostname: "consul3"
    command: "agent -server -join=consul1"
    links:
      - "consul1"
从中,确保已使用
-ui
参数启动代理

UI与HTTP API位于同一端口的/UI路径上。
默认情况下,这是

我确实在广播中看到8500映射到您的主机(0.0.0.0)

还请检查(如中所示),如果可以从中帮助(至少用于测试)

,请确保已使用
-ui
参数启动代理

UI与HTTP API位于同一端口的/UI路径上。
默认情况下,这是

我确实在广播中看到8500映射到您的主机(0.0.0.0)



同时检查(如中所示)是否有帮助(至少用于测试)

您使用的是什么docker版本,在哪个主机操作系统上?
$docker版本客户端:版本:17.06.0-ce API版本:1.30 Go版本:go1.8.3 Git提交:02c1d87构建:2017年6月23日星期五21:31:53 OS/Arch:darwin/amd64服务器:版本:17.06.0-ce API版本:1.30(最低版本1.12)Go版本:go1.8.3 Git提交:02c1d87构建:2017年6月23日星期五21:51:55 OS/Arch:linux/amd64实验性:真
。这是macOS Sierra。您是在使用DOcker工具箱、VirtualBox还是DOcker for Mac()和Xhyve()?DOcker for Mac。如果默认情况下Xhyve也是如此。当您使用
docker容器ps--all
,您是否看到这些端口已发布(如
*:80->80
)?您使用的docker版本是什么,在哪个主机操作系统上?
$docker版本客户端:版本:17.06.0-ce API版本:1.30 Go版本:go1.8.3 Git提交:02c1d87构建:2017年6月23日星期五21:31:53 OS/Arch:darwin/amd64服务器:版本:17.06.0-ce API版本:1.30(最低版本1.12)Go版本:go1.8.3 Git提交:02c1d87构建:2017年6月23日星期五21:51:55 OS/Arch:linux/amd64实验性:真
。这是macOS Sierra。您是在使用DOcker工具箱、VirtualBox还是DOcker for Mac()和Xhyve()?DOcker for Mac。如果默认情况下Xhyve也是如此。当您使用
docker容器ps--all
,您是否看到这些端口已发布(如
*:80->80
)?@amb85我现在看到了:)我添加了另一个选项。@amb85如果这仍然不起作用,这看起来像是虚拟机xhyve和物理主机Mac之间的端口转发问题。@amb85检查
pinata-list
的输出,如中所示。我一直在思考
客户机
绑定
地址,说实话,我对每一个地址的用途以及它们的实际用途感到非常困惑。我还没有发现前面的文档过于清晰,甚至上面的链接也让我有点抓狂。是否有一个docker ce相当于
pinata-list
?找不到命令。@amb85我现在看到了:)我添加了另一个选项。@amb85如果这仍然不起作用,那看起来像是虚拟机xhyve和物理主机Mac之间的端口转发问题。@amb85检查
pinata-list
的输出,如中所示,将检查该问题。我一直在思考
客户机
绑定
地址,说实话,我对每一个地址的用途以及它们的实际用途感到非常困惑。我还没有发现前面的文档过于清晰,甚至上面的链接也让我有点抓狂。是否有一个docker ce相当于
pinata-list
?找不到命令。
version: '3.2'
services:
  consul1:
    image: "consul:latest"
    container_name: "net-sci_discovery-service_consul_1"
    hostname: "consul1"
    ports:
      - target: 8400
        published: 8400
        mode: host
      - target: 8500
        published: 8500
        mode: host
      - target: 8600
        published: 8600
        mode: host
    volumes:
      - ./etc/consul.d:/etc/consul.d
    command: "agent -server -ui -bootstrap-expect 3 -config-dir=/etc/consul.d -bind=0.0.0.0 -client=127.0.0.1"
  consul2:
    image: "consul:latest"
    container_name: "net-sci_discovery-service_consul_2"
    hostname: "consul2"
    command: "agent -server -join=consul1"
    links:
      - "consul1"
  consul3:
    image: "consul:latest"
    container_name: "net-sci_discovery-service_consul_3"
    hostname: "consul3"
    command: "agent -server -join=consul1"
    links:
      - "consul1"