【问题标题】:Some docker containers don't start on system boot一些 docker 容器不会在系统启动时启动
【发布时间】:2015-04-17 15:29:18
【问题描述】:

我在 Ubuntu 14.04 上运行的容器 (--restart=always) 上使用 docker 重启策略。

示例容器:

docker run -d --restart=always redis:2.8 docker run -d --restart=always postgres:9.4

当我重新启动机器时,postgres 容器会自动启动,但 redis 容器不会。

这是 docker 重启策略的问题还是我遗漏了什么?

编辑: 如果在 docker 文档中找到这个:

从 Docker 1.2 开始,重启策略是内置的 Docker 机制 用于在容器退出时重新启动容器。如果设置,重新启动策略 将在 Docker 守护程序启动时使用,通常会发生 系统启动后。重启策略将确保链接 容器以正确的顺序启动。

redis容器重启后的Docker日志(redis容器没有启动):

[1] 17 Apr 15:32:27.261 # User requested shutdown...
[1] 17 Apr 15:32:27.261 * Saving the final RDB snapshot before exiting.
[1] 17 Apr 15:32:27.406 * DB saved on disk
[1] 17 Apr 15:32:27.406 # Redis is now ready to exit, bye bye...

【问题讨论】:

  • docker events 显示了什么?我猜docker run 失败会记录一些文本?
  • @user2915097 因为系统正在关闭而不能真正使用docker events?我在问题中添加了redis容器的docker日志。
  • @user2915097 我删除了 redis 容器并再次启动它。现在它似乎正在工作..
  • 检查文档docs.docker.com/reference/commandline/cli/#events docker events 肯定可以工作,并且非常有用

标签: postgresql ubuntu redis docker


【解决方案1】:

我最近在使用 Docker 18.06.3-ce 时遇到了同样的问题。

有一个open issue on github。它尚未解决并标记为 Docker 守护程序错误。

【讨论】:

猜你喜欢
  • 2018-04-04
  • 2015-08-07
  • 1970-01-01
  • 2018-05-16
  • 1970-01-01
  • 2017-11-29
  • 2016-05-26
  • 2021-06-03
  • 1970-01-01
相关资源
最近更新 更多