linux - 无法编辑 systemd 服务文件
问题描述
需要编辑以下条目:
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
在/lib/systemd/system/docker.service
文件中
$ sudo -E systemctl edit docker.service
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2376 --containerd=/run/containerd/containerd.sock
重启后没有更新服务文件(sudo systemctl restart docker.service
)
编辑
在 AWS EC2 上,问题如下:
$ nano /etc/systemd/system/docker.service.d/override.conf
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
/lib/systemd/system/docker.service
仍然显示未修改
1) 编辑服务文件( ) 的推荐方法是什么docker.service
?
2) 为什么/lib/systemd/system/docker.service
不能直接编辑?
解决方案
您需要为docker.service
.
- 创建
/etc/systemd/system/docker.service.d/override.conf
包含内容的文件
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2376 --containerd=/run/containerd/containerd.sock
- 重新加载 systemd 单元文件。
systemctl daemon-reload
注意:根据 systemd 设计编辑任何 systemd 单元文件后,需要重新加载 systemctl 守护程序。有关更多信息,请查看此。
- 重新启动 docker 守护进程。
systemctl restart docker
您需要重新启动 docker daemon 以获取最新更新的 systemd 单元文件。
有关更多信息,请查看此。
推荐阅读
- ios - 为什么 Swift 5.0.1 和 5.3.2 之间的错误运行时多态性不同
- flutter - 如何根据颤动中的ID从列表中获取项目?
- python - 在 csv pandas 中添加特定消息
- pytorch - 如何将配置有小的 max_position_embeddings 的预训练变压器模型扩展到更长的模型
- javascript - 如何将图像从反应本机上传到java spring boot?
- project-reactor - 像 flatMap() 这样在同一主线程上运行的 Reactor 运算符是否比常规阻塞代码更有效?
- java - 使用自动完成文本视图在 android 中单行显示多个芯片/标签
- husky - 测试失败时,赫斯基不显示消息
- reactjs - 如何显示从获取请求中存储的数据?
- typescript - TypeGraphQL_如何避免创建未输入的字段