Как добавить новый сервис в systemd/systemctl и запускать его при старте Ubuntu

Задача

Есть docker-compose файл, поднимающий Zabbix. Есть небольшая обёртка в виде Makefile, которая позволяет запускать и останавливать docker-compose. Нужно добавить запуск этой команды при старте/рестарте системы.

Дано

Всё лежит в `/var/www/zabbix-server/`.
Содержание файла Makefile:

...
docker-up:
        docker-compose up -d

docker-down:
        docker-compose stop

Решение

  1. Создать новый файл `vim /etc/systemd/system/zabbix.service`.
[Unit]
Description=Run Zabbix Docker Containers on Startup

[Service]
RemainAfterExit=True
Restart=always
RestartSec=1
WorkingDirectory=/var/www/zabbix-server
ExecStart=/usr/bin/make docker-up
ExecStop=/usr/bin/make docker-down

[Install]
WantedBy=default.target
  1. chmod 644 /etc/systemd/system/zabbix.service
  2. systemctl enable zabbix.service
  3. systemctl start zabbix.service
Поделиться
Отправить
Популярное