1
0
Fork 0
mirror of https://github.com/EDeev/y.calendarkin.git synced 2026-10-08 00:39:27 +03:00
y.calendarkin/compose.yaml
Egor Deev abafd7a55d Хранилище — PostgreSQL вместо двух файлов SQLite
code/sql.py на psycopg 3 с пулом соединений (переподключается сам); таблицы users, urls,
alarms — в PostgreSQL user и url зарезервированы. Внутренние номера пользователей сохраняются:
на них ссылаются файлы календарей data/icals/<номер>.ics. scripts/migrate_sqlite.py переносит
старые базы со сверкой (проверено на копии рабочих: 25 пользователей, 9 подписок).
Тесты хранилища и переноса — на PostgreSQL в CI; compose поднимает бота вместе с базой.
2026-10-06 11:46:39 +00:00

32 lines
677 B
YAML

services:
bot:
build: .
image: ghcr.io/edeev/y.calendarkin:latest
env_file: .env
environment:
TZ: Europe/Moscow
DATABASE_URL: postgresql://yacal:yacal@db:5432/yacal
volumes:
- icals:/app/data/icals
depends_on:
db:
condition: service_healthy
restart: unless-stopped
db:
image: postgres:16-alpine
environment:
POSTGRES_USER: yacal
POSTGRES_PASSWORD: yacal
POSTGRES_DB: yacal
volumes:
- pgdata:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U yacal"]
interval: 5s
retries: 10
restart: unless-stopped
volumes:
icals:
pgdata: