Докер-машина испортила докер на хосте
После создания Ubuntu 16.04 Droplet в Digital Ocean я попытался подключить его к докеру с моей локальной машины, но докер сервера не запустился. На самом деле я попытался двумя способами: первый с установленным на сервере докером, а второй без, потому что он появляется при выполнении команды docker-machine create ...
он устанавливает и переопределяет любой докер на сервере, который в итоге создает на нем сбойный экземпляр докера. В брандмауэре включены порты 22, 80, 443 и 2376. Есть ли у машины create возможность не устанавливать докер на хост?
$ docker-machine create --driver=generic \
--generic-ip-address=XXX.XXX.XXX.XXX \
--generic-ssh-user=rinaldi \
--generic-ssh-key=C:/Users/[...]/id_rsa \
--generic-ssh-port=22 \
DigitalOcean
Running pre-create checks...
Creating machine...
(DigitalOcean) Importing SSH key...
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with ubuntu(systemd)...
Installing Docker...
Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
Error creating machine: Error running provisioning: ssh command error:
command : sudo systemctl -f start docker
err : exit status 1
output : Job for docker.service failed because the control process exited with error code. See "systemctl status docker.service" and "journalctl -xe" for details.
это systemctl -xe на сервере
-- Unit docker.service has finished shutting down.
Sep 19 02:11:24 DigitalOcean systemd[1]: Closed Docker Socket for the API.
-- Subject: Unit docker.socket has finished shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.socket has finished shutting down.
Sep 19 02:11:24 DigitalOcean systemd[1]: Stopping Docker Socket for the API.
-- Subject: Unit docker.socket has begun shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.socket has begun shutting down.
Sep 19 02:11:24 DigitalOcean systemd[1]: Starting Docker Socket for the API.
-- Subject: Unit docker.socket has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.socket has begun starting up.
Sep 19 02:11:24 DigitalOcean systemd[1]: Listening on Docker Socket for the API.
-- Subject: Unit docker.socket has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.socket has finished starting up.
--
-- The start-up result is done.
Sep 19 02:11:24 DigitalOcean systemd[1]: docker.service: Start request repeated too quickly.
Sep 19 02:11:24 DigitalOcean systemd[1]: Failed to start Docker Application Container Engine.
-- Subject: Unit docker.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit docker.service has failed.
--
-- The result is failed.
Sep 19 02:11:24 DigitalOcean systemd[1]: docker.socket: Unit entered failed state.
Sep 19 02:11:40 DigitalOcean sshd[3898]: Did not receive identification string from [...]
Sep 19 02:11:40 DigitalOcean sshd[6889]: Did not receive identification string from [...]
Sep 19 02:12:32 DigitalOcean kernel: [UFW BLOCK] IN=eth0 OUT= MAC=[...] SRC=[...] DST=[...] LEN=40 TOS=0x00 PREC=0x0
Sep 19 02:12:40 DigitalOcean sudo[7183]: rinaldi : TTY=pts/0 ; PWD=/home/rinaldi ; USER=root ; COMMAND=/bin/journalctl -xe
Sep 19 02:12:40 DigitalOcean sudo[7183]: pam_unix(sudo:session): session opened for user root by rinaldi(uid=0)
1 ответ
Похоже, что это ошибка на Docker-машине 0.11, но она исправлена на 0.12, и если вам нужно начать работу на 0.11, вот решение.
Заменить эту строку в /etc/systemd/system/docker.service.d/10-machine.conf
и затем запустите systemctl daemon-reload, чтобы устранить проблему.
# ExecStart=/usr/bin/docker daemon -H ...
ExecStart=/usr/bin/dockerd -H ...