背景
有台服务器 docker 容器的映射文件用的通过 ISCSI 挂载的目录 /opt/data,于是启动的时候可能就会出问题,iscsi 还没挂载完成 docker 服务就启动了,所以需要简单修改一下
操作步骤
- 通过
service status docker
找到配置文件Loaded: loaded (/lib/systemd/system/docker.service; enabled; preset: enabled)
- 编辑
/lib/systemd/system/docker.service
找到原始的启动命令ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
前面添加#
注释掉 - 新增启动命令
ExecStart=/bin/bash -c "while ! mountpoint -q /opt/data; do echo 'Waiting for iSCSI mount...'; sleep 5; done; /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock"
,注意修改 /opt/data 为真实映射目录,修改 后面的/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
为原始启动命令
重启测试
# systemctl daemon-reload
# systemctl restart docker.service
发表回复