【发布时间】:2016-01-25 21:54:04
【问题描述】:
我有几个在 CoreOS beta (899.5.0) 上运行的小项目
这已经发生在我身上第二次了,我有 3 个容器正在运行。一切都很好,花花公子。然后在几天没有查看我在该服务器上的网站后,我注意到当我尝试访问它们时页面已关闭。
当我在 Digital Ocean 上登录我的 CoreOS 机器并输入 docker ps 时,我注意到我所有的容器都不见了!这太疯狂了。
我什至为其中几个设置了 systemd 服务,这样如果它们因任何原因终止,它们应该再次运行。但他们没有。
虽然我在登录时会向我打招呼,但我确实看到了这一点;我不确定它是否与它有关:
Last login: Sun Jan 17 23:42:37 2016 from 81.106.109.70
CoreOS beta (899.5.0)
Failed Units: 13
sshd@1509-178.62.0.199:22-219.219.114.120:14536.service
sshd@1541-178.62.0.199:22-219.219.114.120:30158.service
sshd@1581-178.62.0.199:22-219.219.114.120:17539.service
sshd@1995-178.62.0.199:22-122.224.34.168:1397.service
sshd@1996-178.62.0.199:22-122.224.34.168:3789.service
sshd@2002-178.62.0.199:22-122.224.34.168:2983.service
sshd@230-178.62.0.199:22-219.219.114.120:51826.service
sshd@259-178.62.0.199:22-219.219.114.120:38882.service
sshd@309-178.62.0.199:22-219.219.114.120:34654.service
sshd@326-178.62.0.199:22-219.219.114.120:21256.service
sshd@346-178.62.0.199:22-219.219.114.120:39645.service
sshd@364-178.62.0.199:22-219.219.114.120:63277.service
sshd@791-178.62.0.199:22-219.219.114.120:37294.service
我在 Google 上找不到任何有关 CoreOS 上发生这种情况的信息。请,任何帮助表示赞赏!
附:我的 systemd 配置如下所示:
szeremi.service
[Unit]
Description=Run %p
Requires=docker.service
After=docker.service
[Service]
Restart=always
ExecStartPre=-/usr/bin/docker kill %p
ExecStartPre=-/usr/bin/docker rm -f %p
ExecStart=/usr/bin/docker run -t --rm --name %p \
-p 80:8080 \
amcsi/szeremi
ExecStop=/usr/bin/docker stop %p
[Install]
WantedBy=multi-user.target
编辑:日志文件 (journalctl -u szeremi.service) 的最新页面是:https://gist.github.com/amcsi/95c8b0eb71de2f44c16b#file-journalctl-u-szeremi-service
【问题讨论】:
-
journalctl 向您展示了什么?
journalctl -u szeremi.service -
您是通过登录节点直接使用
systemd,还是使用Fleet之类的调度程序? -
直接。我把它复制到 /etc/systemd/system
-
@AttilaSzeremi 我提交了一个答案,表明需要启用服务才能使其持续启动。
标签: docker digital-ocean systemd coreos