2016-10-05 8 views
0

Я запускаю сервер GCE с облачным файлом, который вызывает изображение докеров. При запуске вытаскивание изображения докера выходит из строя, но если я запускаю ту же службу при входе в систему, это удается. Я бы хотел, чтобы он работал над запуском.Запуск пробной докеры из неверных префиксов cloud-init «docker.io» на имя изображения

Глядя на журналы обслуживания, кажется, что это неверно префикс докеры с помощью docker.io и поэтому сбой работы.

Есть ли что-то, что я мог бы сделать, чтобы предотвратить это? Возможно, мне нужно подождать или проверить что-то еще, чтобы загрузить, прежде чем пытаться прикрепить докер?

Вот мой cloudinit файл:

#cloud-config 

users: 
- name: shinyuser 
    uid: 2000 

write_files: 
- path: /etc/systemd/system/shinyserver.service 
    permissions: 0644 
    owner: root 
    content: | 
    [Unit] 
    Description=Shiny server 

    [Service] 
    ExecStart=/usr/bin/docker run --name=vdshinyserver -p 80:3838 -v /home/shinyuser/shinyapps/:/srv/shiny-server/ -v /home/shinyuser/srv/shinylog/:/var/log/ rocker/shiny 
    ExecStop=/usr/bin/docker stop vdshinyserver 

runcmd: 
- systemctl daemon-reload 
- systemctl start shinyserver.service 

А вот журналы:

[email protected] ~ $ sudo journalctl -u shinyserver 
-- Logs begin at Wed 2016-10-05 08:39:06 UTC, end at Wed 2016-10-05 08:39:46 UTC. -- 
Oct 05 08:39:11 xxxshiny docker[1016]: Unable to find image 'rocker/shiny:latest' locally 
Oct 05 08:39:26 xxxshiny docker[1016]: Pulling repository docker.io/rocker/shiny 
Oct 05 08:39:31 xxxshiny docker[1016]: /usr/bin/docker: Tag latest not found in repository docker.io/rocker/shiny. 
Oct 05 08:39:31 xxxshiny docker[1016]: See '/usr/bin/docker run --help'. 
Oct 05 08:39:31 xxxshiny docker[1045]: Error response from daemon: No such container: vdshinyserver 

[email protected] ~ $ sudo systemctl start shinyserver.service 
[email protected] ~ $ sudo journalctl -u shinyserver 
... 
Oct 05 08:42:22 xxxshiny docker[1117]: Unable to find image 'rocker/shiny:latest' locally 
Oct 05 08:42:23 xxxshiny docker[1117]: latest: Pulling from rocker/shiny 
Oct 05 08:42:23 xxxshiny docker[1117]: a84f66826a7f: Pulling fs layer 
Oct 05 08:42:23 xxxshiny docker[1117]: aaf7c0da390d: Pulling fs layer 
...etc... 

ответ

1

Я отредактировал мой cloudinit, чтобы соответствовать, что в Docker documentation включать требование docker.service в файл, и теперь он работает:

#cloud-config 

users: 
- name: shinyuser 
    uid: 2000 

write_files: 
- path: /etc/systemd/system/shinyserver.service 
    permissions: 0644 
    owner: root 
    content: | 
    [Unit] 
    Description=VisitDubai Shiny server for reporting 
    Requires=docker.service 
    After=docker.service 

    [Service] 
    Restart=always 
    ExecStart=/usr/bin/docker run --name=vdshinyserver -p 80:3838 -v /home/shinyuser/shinyapps/:/srv/shiny-server/ -v /home/shinyuser/srv/shinylog/:/var/log/ rocker/shiny 
    ExecStop=/usr/bin/docker stop vdshinyserver 
+0

Я также добавил 'Requires' и' After', получается tha t важно «Перезагрузка = всегда». –