CoreOS无法在启动时拉出docker容器

weixin_38050648 2019-09-12 11:09:42
在关注systemd guide之后,我遇到了这个示例配置的问题: [Unit] Description=MyApp After=docker.service Requires=docker.service [Service] TimeoutStartSec=0 ExecStartPre=-/usr/bin/docker kill busybox1 ExecStartPre=-/usr/bin/docker rm busybox1 ExecStartPre=/usr/bin/docker pull busybox ExecStart=/usr/bin/docker run --name busybox1 busybox /bin/sh -c "while true; do echo Hello World; sleep 1; done" [Install] WantedBy=multi-user.target 如果我在系统运行时运行“systemctl start hello”,则docker将启动,但是如果我启动“hello.service”以通过systemd启动并重启机器,则会收到以下错误: -- Reboot -- Mar 15 01:17:44 general systemd[1]: Starting MyApp... Mar 15 01:17:47 general docker[510]: Error response from daemon: No such container: busybox1 Mar 15 01:17:47 general docker[510]: time="2015-03-15T01:17:47Z" level="fatal" msg="Error: failed to kill one or more containers" Mar 15 01:17:47 general docker[637]: Error response from daemon: No such container: busybox1 Mar 15 01:17:47 general docker[637]: time="2015-03-15T01:17:47Z" level="fatal" msg="Error: failed to remove one or more containers" Mar 15 01:17:47 general systemd[1]: hello.service: control process exited, code=exited status=1 Mar 15 01:17:47 general systemd[1]: Failed to start MyApp. Mar 15 01:17:47 general systemd[1]: Unit hello.service entered failed state. Mar 15 01:17:47 general systemd[1]: hello.service failed. Mar 15 01:17:47 general docker[673]: Pulling repository busybox Mar 15 01:17:47 general docker[673]: time="2015-03-15T01:17:47Z" level="fatal" msg="Get https://index.docker.io/v1/repositories/library/busybox/images: dial tcp: lookup index.docker.io: connection refused" 我有什么问题吗?
...全文
35 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
weixin_38061608 2019-09-12
  • 打赏
  • 举报
回复
如果要在引导时运行它,则应该依赖network-online.target服务.在运行docker pull命令之前,您需要确保网络已启动.有关详细信息,请参阅systemd文档中的“Running Services After the Network is up”. 以下适用于我: [Unit] Description=MyApp Requires=docker.service network-online.target After=docker.service network-online.target [Service] TimeoutStartSec=0 ExecStartPre=-/usr/bin/docker kill busybox1 ExecStartPre=-/usr/bin/docker rm busybox1 ExecStartPre=/usr/bin/docker pull busybox ExecStart=/usr/bin/docker run --name busybox1 busybox /bin/sh -c "while true; do echo Hello World; sleep 1; done" [Install] WantedBy=multi-user.target

476

社区成员

发帖
与我相关
我的任务
社区描述
其他技术讨论专区
其他 技术论坛(原bbs)
社区管理员
  • 其他技术讨论专区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧