Update README with systemd and deb package docs

This commit is contained in:
Andrey Kutin 2026-07-03 09:47:10 +03:00
parent ca9912f8de
commit 2da5f293b1
1 changed files with 51 additions and 1 deletions

View File

@ -120,6 +120,36 @@ CREATE TABLE random_data (
);
```
## systemd
Юнит-файл: `deploy/systemd/cards.service`
```ini
[Unit]
Description=Cards web server
After=network-online.target
[Service]
Type=simple
User=cards
Group=cards
ExecStart=/usr/bin/cards /etc/cards/config.json
Restart=on-failure
AmbientCapabilities=CAP_NET_BIND_SERVICE
NoNewPrivileges=yes
ProtectSystem=full
ProtectHome=yes
PrivateTmp=yes
```
Установка вручную:
```bash
sudo cp deploy/systemd/cards.service /usr/lib/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now cards
```
## Сборка deb-пакета
```bash
@ -130,6 +160,26 @@ cpack
Результат: `cards-1.0.0-Linux.deb`
### Содержимое deb-пакета
| Путь | Назначение |
|---|---|
| `/usr/bin/cards` | Исполняемый файл |
| `/usr/lib/systemd/system/cards.service` | systemd-юнит |
| `/etc/cards/config.json.example` | Пример конфигурации |
| `/usr/share/doc/cards/LICENSE` | Лицензия |
### Управляющие скрипты
При установке deb-пакета (`postinst`):
- Создаётся пользователь и группа `cards`
- Копируется `/etc/cards/config.json.example` → `/etc/cards/config.json` (если нет)
- Сервис `cards` включается и запускается
При удалении (`prerm`):
- Сервис останавливается и отключается
## Завершение работы
Для остановки сервера отправьте сигнал `SIGINT` (Ctrl+C) или `SIGTERM`.
- Вручную: `Ctrl+C` или `kill` с сигналом `SIGTERM`
- systemd: `systemctl stop cards`