Kubernetes/Docker/Files/docker.service
offends 7a2f41e7d6
All checks were successful
continuous-integration/drone Build is passing
synchronization
2024-08-07 18:54:39 +08:00

48 lines
1.9 KiB
Desktop File

# Github仓库示例地址: https://github.com/moby/moby/blob/master/contrib/init/systemd/docker.service
# 文件位置: /usr/lib/systemd/system/docker.service
[Unit]
# 描述这个单元的作用是管理 Docker 应用容器引擎
Description=Docker Application Container Engine
# 提供文档链接,指向 Docker 的官方文档
Documentation=https://docs.docker.com
# 指定单元的启动顺序和依赖关系[网卡,防火墙,时间同步]
After=network-online.target firewalld.service time-set.target
# 在启动时需要网络已启动
Wants=network-online.target
[Service]
# 指定服务的类型为通知类型
Type=notify
# 指定 Docker 守护进程的启动命令和参数
ExecStart=/usr/local/bin/dockerd
# 指定在执行重载时的命令
ExecReload=/bin/kill -s HUP $MAINPID
# 设置启动超时时间为 0,重启时间为 2 秒
TimeoutStartSec=0
# 用于指定服务重新启动之间的延迟时间
RestartSec=100ms
# 当服务以非零(非成功)的退出状态结束时,Systemd 将自动尝试重新启动该服务
Restart=on-failure
# 用于设置在 Systemd 尝试启动服务时允许的最大连续启动次数
StartLimitBurst=3
# 指定了在 StartLimitBurst 尝试次数内重新启动服务的时间间隔限制
StartLimitInterval=60s
# 限制一个服务进程可以打开的文件描述符(File Descriptor)的数量
LimitNOFILE=infinity
# 限制一个服务进程可以创建的子进程数量
LimitNPROC=infinity
# 限制一个服务进程可以使用的核心转储(core dump)文件的大小
LimitCORE=infinity
# 限制一个单元内的任务数量(即线程和进程总数)
TasksMax=infinity
# 指定使用委托,让 systemd 不重置 docker 容器的 cgroups
Delegate=yes
# 设置 KillMode 为 process,只杀死 Docker 进程,不影响 cgroup 中的其他进程
KillMode=process
# 设置 OOMScoreAdjust 为 -500,降低容器进程被 OOM 杀死的概率
# OOMScoreAdjust=-500
# 安装目标为多用户模式
[Install]
WantedBy=multi-user.target