mirror of
https://github.com/EDeev/y.calendarkin.git
synced 2026-10-07 16:37:50 +03:00
code/sql.py на psycopg 3 с пулом соединений (переподключается сам); таблицы users, urls, alarms — в PostgreSQL user и url зарезервированы. Внутренние номера пользователей сохраняются: на них ссылаются файлы календарей data/icals/<номер>.ics. scripts/migrate_sqlite.py переносит старые базы со сверкой (проверено на копии рабочих: 25 пользователей, 9 подписок). Тесты хранилища и переноса — на PostgreSQL в CI; compose поднимает бота вместе с базой.
20 lines
498 B
Docker
20 lines
498 B
Docker
FROM python:3.12-slim
|
|
|
|
ENV PYTHONDONTWRITEBYTECODE=1 \
|
|
PYTHONUNBUFFERED=1
|
|
|
|
WORKDIR /app
|
|
COPY requirements.txt .
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
|
|
|
COPY code/ code/
|
|
COPY data/photo_edit_alarm.jpg data/
|
|
RUN useradd --create-home --uid 1000 app \
|
|
&& mkdir -p data/icals \
|
|
&& chown -R app:app /app
|
|
USER app
|
|
VOLUME ["/app/data/icals"]
|
|
|
|
# пути к данным в коде — относительно папки code/ (../data)
|
|
WORKDIR /app/code
|
|
CMD ["python", "bot.py"]
|