2016-12-20 3 views
1

Когда я пытаюсь запустить etcd (версия 3.0.0) на Докер:Ошибка при запуске etcd v3 на Докер

sudo 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:v3.0.0 \ 
-name etcd0 \ 
-advertise-client-urls http://${HostIP}:2379,http://${HostIP}:4001 \ 
-listen-client-urls http://0.0.0.0:2379,http://0.0.0.0:4001 \ 
-initial-advertise-peer-urls http://${HostIP}:2380 \ 
-listen-peer-urls http://0.0.0.0:2380 \ 
-initial-cluster-token etcd-cluster-1 \ 
-initial-cluster etcd0=http://${HostIP}:2380 \ 
-initial-cluster-state new 

У меня есть ошибка:

docker: Error response from daemon: invalid header field value "oci runtime error: container_linux.go:247: starting container process caused \"exec: \\\"-name\\\": executable file not found in $PATH\"\n".

Что является причиной этой ошибки и как я могу это исправить?

+0

не в программировании, но проблема в Докер администратора, извините, не по теме имхо. –

+0

Кажется, изображение не имеет 'ENTRYPOINT' и пытается запустить команду' -name', которая, конечно, не найдена. – Henry

+0

В etcd v3 интерфейс Docker изменился так, что нужно дать команду запуска, если вы хотите дать параметры. Это делается так, что изображение можно использовать также для запуска, например. инструмент командной строки etcdctl. См. Мое репо для образцов, которые работают: https://github.com/akauppi/etcd3-bench/blob/master/docs/Running%20etcd%20manually.md – akauppi

ответ

1

Как указано в комментариях, изображение quay.io/coreos/etcd:v3.0.0 не содержит ENTRYPOINT, вместо этого выбирает CMD. Итак, если вы хотите, чтобы поставить все аргументы на docker run вам нужно будет указать команду, а также:

docker run -p 2379:2379 --name etcd quay.io/coreos/etcd:v3.1.0 \ 
    /usr/local/bin/etcd \ 
     --advertise-client-urls http://0.0.0.0:2379 \ 
     --listen-client-urls http://0.0.0.0:2379 \ 
     --initial-advertise-peer-urls http://0.0.0.0:2380 \ 
     --listen-peer-urls http://0.0.0.0:2380 \ 
     --initial-cluster "default=http://0.0.0.0:2380" 
Смежные вопросы