chore: update

This commit is contained in:
protokey committed 2026-10-01 08:16:15 +04:00
1 parent fd4b05097a
commit deaa5b04db
3 files changed
+20 -4

No files matched your search

+16 -1
View File
@@ -19,7 +19,7 @@ SERVERUS_CA = $(if $(filter yes,$(ca)),--ca $(SERVERUS_CA_DIR))
MAKECMDGOALS_TARGETS := install freeze wheels sync sync-offline clean help
PKG := $(filter-out $(MAKECMDGOALS_TARGETS),$(MAKECMDGOALS))
.PHONY: install freeze wheels sync sync-offline clean help venv dj_makemigrations dj_migrate dj_superuser dj_run dj_test dj_startapp dj_worker dj_secrets dj_backup dj_restore dj_check_points docker_build docker_up serve_ssh serverus_xui serverus_key serverus_cert serverus_outbound serverus_release serverus_docker serverus_app
.PHONY: install freeze wheels sync sync-offline clean help venv dj_makemigrations dj_migrate dj_superuser dj_run dj_test dj_startapp dj_worker dj_secrets dj_backup dj_restore dj_check_points docker_build docker_up dev dev_stop serve_ssh serverus_xui serverus_key serverus_cert serverus_outbound serverus_release serverus_docker serverus_app
help:
@echo "make install <pkg> [<pkg> ...] - установить пакет(ы) в $(VENV), обновить $(REQUIREMENTS), собрать wheel в $(WHEELS_DIR)/"
@@ -31,6 +31,8 @@ help:
@echo "make dj_secrets - сгенерировать недостающие секреты в .env"
@echo "make dj_backup [keep=14] - бэкап базы в extra/backups, keep - сколько последних оставить"
@echo "make dj_restore file=<dump> - восстановить базу из бэкапа (сайт и воркер остановлены)"
@echo "make dev - разработка: инфраструктура в docker, миграции, сайт и воркер из $(VENV) (Ctrl+C - остановить оба)"
@echo "make dev_stop - остановить инфраструктуру разработки"
@echo "make docker_build / docker_up - собрать образ и поднять все в docker (профиль app)"
@echo "make serverus_xui ip=<ip> password=<root_password> [domain=<domain>] [ssl=no] [ca=yes] - настроить свежий сервер и поставить 3x-ui, доступы в $(SERVERUS_ACCESS_DIR)/<ip>/"
@echo "make serverus_key ip=<ip> action=add|del|stats name=<name> - ключ на панели, настроенной через serverus_xui"
@@ -117,6 +119,19 @@ docker_build: wheels
docker_up:
docker compose --profile app up -d
# разработка: в docker только то, что нужно сайту и воркеру; сами они - из venv, с перезагрузкой runserver
DEV_SERVICES := postgres rabbitmq telegram telegram-files
dev:
docker compose up -d $(DEV_SERVICES)
@until docker compose exec -T postgres pg_isready -q; do sleep 1; done
$(MANAGE) migrate --noinput
@# Ctrl+C получают оба процесса
$(MAKE) --no-print-directory -j2 dj_run dj_worker
dev_stop:
docker compose stop $(DEV_SERVICES)
dj_startapp:
$(MANAGE) startapp $(app)
+3 -3
View File
@@ -300,9 +300,9 @@ https://1.2.3.4:12839/9g72PmSGAQ3V/<subId>
### Запуск
1. `cp env_example .env` и заполнить: база, RabbitMQ, `FIELD_ENCRYPTION_KEYS`, `SERVERUS_CERTIFICATES`, `TELEGRAM_WEBHOOK_URL`, `ALLOWED_HOSTS`.
2. `docker compose up -d` - Postgres, RabbitMQ, свой Bot API сервер.
3. `make sync`, `make dj_migrate`, `make dj_superuser`.
4. Два процесса: `make dj_run` (сайт, админка и webhook ботов), `make dj_worker` (установка и возврат серверов).
2. `make sync`.
3. `make dev` - Postgres, RabbitMQ и свой Bot API сервер в docker, миграции, затем сайт (`dj_run`: админка и webhook ботов) и воркер (`dj_worker`: установка и возврат серверов) в одном терминале. Ctrl+C останавливает оба, `make dev_stop` - инфраструктуру. По отдельности: `docker compose up -d postgres rabbitmq telegram telegram-files`, `make dj_migrate`, `make dj_run`, `make dj_worker`.
4. При первом запуске - `make dj_superuser`.
5. В админке добавить бота с токеном, выбрать интерфейс MyPoint и опубликовать.
Подробности: `src/App/README.md` (сценарии, секреты, ручной вход `make serve_ssh`), `src/serverus/README.md` (плейбуки, ручная проверка на сервере), `src/Telegram/README.md` (боты).
+1
View File
@@ -8,6 +8,7 @@ Django приложение связывающее все части сайта
-[x] Клиенты и статистика через API панели 3x-ui
-[x] Супервизор долгих задач и ежедневная проверка точек
-[x] Docker-серверы: приложения в `~/apps` из бота
-[ ] Бэкапы named volumes docker-приложений: сейчас данные сервисов (база Gitea, RustDesk и т.п.) теряются при переустановке ОС и `remove` с `volumes`
Зависимости: `Telegram` (интерфейс бота, пользователи, уведомления) и `serverus` (настройка серверов).