48 lines
1.9 KiB
Desktop File
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 |