【问题标题】:How to set a flag in docker at the time of start如何在启动时在 docker 中设置标志
【发布时间】:2019-01-07 20:29:10
【问题描述】:

我的 docker 运行良好,但不知道为什么在 32 小时之前 docker daemon stop 附近。

所以我尝试再次运行守护进程sudo systemctl start docker。一切都很好。但是当我尝试使用docker restart $(docker ps -aq) 重新启动容器时。

我在安装 overlay2 时遇到错误。我在谷歌上进行了调查,发现我的服务器不支持 overlay2 驱动程序,这就是我面临这个问题的原因。

所以现在我必须使用标志 --storage-driver 更新 docker 的存储驱动程序,所以我尝试了 sudo systemctl start docker --storage-driver devicemapper 但收到错误 systemctl: unrecognized option '--storage-driver'

有人知道怎么做吗?

码头工人版本:Docker version 1.13.1, build 6e3bb8e/1.13.1 操作系统:

NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

谢谢。

【问题讨论】:

  • 你使用的是哪个docker版本和os版本?
  • Note 1.13.1 非常旧且不受支持。 18.09 是最新的稳定版本,18.06.x 是我目前推荐的版本(等待 18.09.1 进行一些修复)。
  • 所以如果我要更新 docker 。那么我可以批量取回旧数据吗? @BMitch
  • 卷中的数据仍然存在。如果更改存储驱动程序,您将丢失图像和容器。

标签: docker centos storage


【解决方案1】:

您可以使用包含以下内容的 /etc/docker/daemon.json 文件设置存储驱动程序:

{
  "storage-driver": "devicemapper"
}

我在使用 overlay2 时运气好得多,所以如果您可以升级内核以支持新驱动程序,我建议您改为这样做。

【讨论】:

  • echo '{ "storage-driver": "devicemapper" }' | sudo tee /etc/docker/daemon.json 试过这个
  • sudo systemctl restart docker run this
  • 无法使用文件 /etc/docker/daemon.json 配置 Docker 守护进程:以下指令既指定为标志,又在配置文件中指定:存储驱动程序:(来自标志:overlay2,从文件:devicemapper)得到这个错误
  • 您需要找到标记并将其删除。 /etc/defaults/docker 和 /etc/systemd/system/docker* 是两个常见的位置。
  • 让我检查一下
猜你喜欢
  • 2016-09-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-10
  • 2010-10-15
  • 1970-01-01
相关资源
最近更新 更多