配置开机启动Docker Compose项目

可以参考以下模板文件:

1
2
3
4
5
6
7
8
9
10
11
12
[Unit]
Description=Docker compose on boot
Wants=network-online.target
After=network-online.target
RequiresMountsFor=/run/containers/storage

[Service]
WorkingDirectory=/opt/project
ExecStart=docker-compose up -d

[Install]
WantedBy=multi-user.target

如果有其它需要mount的文件夹, 例如容器依赖CIFS, 则将路径追加到RequiresMountsFor中即可, 空格分隔.

把文件链接或复制到 /etc/systemd/system/ 目录下, 使用 systemctl daemon-reload, systemctl enable ... 即可启动服务.

如果没有安装podman-docker可能没法直接使用docker-compose命令, 此时只需要加上对应的socket参数即可, 例如(对于root): docker-compose -H unix:///run/podman/podman.sock, 或将其设为DOCKER_HOST环境变量.