Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.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 找不到quay.io/etcd容器命令_Docker_Coreos_Etcd - Fatal编程技术网

Docker 找不到quay.io/etcd容器命令

Docker 找不到quay.io/etcd容器命令,docker,coreos,etcd,Docker,Coreos,Etcd,我遇到以下错误: docker:来自守护进程的错误响应:容器命令'-name'不是 找到或不存在 我是在仿效这个例子 以下是我尝试运行的配置: docker run -d -v /usr/share/ca-certificates/:/etc/ssl/certs -p 4001:4001 -p 2380:2380 -p 2379:2379 \ --name etcd quay.io/coreos/etcd \ -name k8_etcd0 \ -advertise-client-urls

我遇到以下错误:

docker:来自守护进程的错误响应:容器命令'-name'不是 找到或不存在

我是在仿效这个例子

以下是我尝试运行的配置:

docker run -d -v /usr/share/ca-certificates/:/etc/ssl/certs -p 4001:4001 -p 2380:2380 -p 2379:2379 \
 --name etcd quay.io/coreos/etcd \
 -name k8_etcd0 \
 -advertise-client-urls http://10.0.0.4:2379,http://10.0.0.3:4001 \
 -listen-client-urls http://0.0.0.0:2379,http://0.0.0.0:4001 \
 -initial-advertise-peer-urls http://10.0.0.3:2380 \
 -listen-peer-urls http://0.0.0.0:2380 \
 -initial-cluster-token etcd-cluster-1 \
 -initial-cluster k8_etcd0=http://10.0.0.4,k8_etcd1=http://10.0.0.5:2388 \
 -initial-cluster-state new

docker run命令中有两个错误- 1.您已经指定了
名称
标志两次 2.第二次指定时,您使用了单破折号而不是双破折号,这是您应该使用的

因此,解决方案是删除第二个名称标志,然后您的命令应该如下所示-

docker run -d -v /usr/share/ca-certificates/:/etc/ssl/certs -p 4001:4001 -p 2380:2380 -p 2379:2379 \
 --name etcd quay.io/coreos/etcd \
 -advertise-client-urls http://10.0.0.4:2379,http://10.0.0.3:4001 \
 -listen-client-urls http://0.0.0.0:2379,http://0.0.0.0:4001 \
 -initial-advertise-peer-urls http://10.0.0.3:2380 \
 -listen-peer-urls http://0.0.0.0:2380 \
 -initial-cluster-token etcd-cluster-1 \
 -initial-cluster k8_etcd0=http://10.0.0.4,k8_etcd1=http://10.0.0.5:2388 \
 -initial-cluster-state new

我尝试在本地运行它,以查看在我建议的修复之后是否工作,但由于命令中指定的IP对我的计算机是未知的,因此出现了一个错误。如果它们在您的设置中有意义-该命令应在应用我的修复程序后工作。

您的docker run命令中有两个错误- 1.您已经指定了
名称
标志两次 2.第二次指定时,您使用了单破折号而不是双破折号,这是您应该使用的

因此,解决方案是删除第二个名称标志,然后您的命令应该如下所示-

docker run -d -v /usr/share/ca-certificates/:/etc/ssl/certs -p 4001:4001 -p 2380:2380 -p 2379:2379 \
 --name etcd quay.io/coreos/etcd \
 -advertise-client-urls http://10.0.0.4:2379,http://10.0.0.3:4001 \
 -listen-client-urls http://0.0.0.0:2379,http://0.0.0.0:4001 \
 -initial-advertise-peer-urls http://10.0.0.3:2380 \
 -listen-peer-urls http://0.0.0.0:2380 \
 -initial-cluster-token etcd-cluster-1 \
 -initial-cluster k8_etcd0=http://10.0.0.4,k8_etcd1=http://10.0.0.5:2388 \
 -initial-cluster-state new

我尝试在本地运行它,以查看在我建议的修复之后是否工作,但由于命令中指定的IP对我的计算机是未知的,因此出现了一个错误。如果它们在您的设置中有意义-在应用我的修复程序后,该命令应能工作。

您缺少在docker容器中启动的命令
etcd

docker run -d -v /usr/share/ca-certificates/:/etc/ssl/certs -p 4001:4001 -p 2380:2380 -p 2379:2379 \
 --name etcd quay.io/coreos/etcd \
 etcd \
 -name k8_etcd0 \
 -advertise-client-urls http://10.0.0.4:2379,http://10.0.0.3:4001 \
 -listen-client-urls http://0.0.0.0:2379,http://0.0.0.0:4001 \
 -initial-advertise-peer-urls http://10.0.0.3:2380 \
 -listen-peer-urls http://0.0.0.0:2380 \
 -initial-cluster-token etcd-cluster-1 \
 -initial-cluster k8_etcd0=http://10.0.0.4,k8_etcd1=http://10.0.0.5:2388 \
 -initial-cluster-state new

加上一些您需要的关于初始集群等的修复,但当您在错误消息中启动它时会看到,您缺少在docker容器中启动的命令
etcd

docker run -d -v /usr/share/ca-certificates/:/etc/ssl/certs -p 4001:4001 -p 2380:2380 -p 2379:2379 \
 --name etcd quay.io/coreos/etcd \
 etcd \
 -name k8_etcd0 \
 -advertise-client-urls http://10.0.0.4:2379,http://10.0.0.3:4001 \
 -listen-client-urls http://0.0.0.0:2379,http://0.0.0.0:4001 \
 -initial-advertise-peer-urls http://10.0.0.3:2380 \
 -listen-peer-urls http://0.0.0.0:2380 \
 -initial-cluster-token etcd-cluster-1 \
 -initial-cluster k8_etcd0=http://10.0.0.4,k8_etcd1=http://10.0.0.5:2388 \
 -initial-cluster-state new

加上一些关于初始集群等需要的修复。但当您在错误消息中启动它时,您会看到

事实上,一个名称是docker容器名称,另一个是集群中此节点的etcd内部名称。没错,我错过了。谢谢。事实上,一个名称是docker容器名称,另一个是集群中此节点的etcd内部名称。没错,我没有看到。谢谢。谢谢,它可以工作,但是有你说的错误消息。谢谢,它可以工作,但是有你说的错误消息。