46 lines
2.4 KiB
Markdown
46 lines
2.4 KiB
Markdown
# Production checklist
|
|
|
|
Этот список помогает подготовить Crank к постоянной работе на сервере.
|
|
|
|
## Перед запуском
|
|
|
|
- Сгенерирован сильный `CRANK_MASTER_KEY`.
|
|
- Сгенерирован сильный `CRANK_SESSION_SECRET`.
|
|
- Сгенерирован сильный `CRANK_PASSWORD_PEPPER`.
|
|
- Задан надежный `CRANK_BOOTSTRAP_ADMIN_PASSWORD`.
|
|
- `CRANK_BASE_URL` указывает на публичный HTTPS URL.
|
|
- PostgreSQL доступен с host, где запускаются контейнеры.
|
|
- Для PostgreSQL настроены бэкапы.
|
|
- Reverse proxy проксирует `/`, `/api/admin/` и `/mcp/`.
|
|
- Для `/mcp/` отключено proxy buffering.
|
|
- Порты опубликованы только там, где нужно: `127.0.0.1` или `0.0.0.0`.
|
|
|
|
## После запуска
|
|
|
|
- `curl /health` для `admin-api` возвращает `ok`.
|
|
- `curl /health` для `mcp-server` возвращает `ok`.
|
|
- UI открывается по публичному домену.
|
|
- Вход под bootstrap admin работает.
|
|
- Demo seed создал Frankfurter-пример, если `CRANK_DEMO_SEED=true`.
|
|
- Тест операции `frankfurter_latest_rate` проходит.
|
|
- MCP-клиент видит инструмент через агента `currency-rates`.
|
|
|
|
## Безопасность
|
|
|
|
- Не храните `.env` в Git.
|
|
- Не передавайте API-ключи агентов в чатах и тикетах.
|
|
- Выдавайте отдельный ключ на каждого MCP-клиента.
|
|
- Удаляйте или отзывайте ключи, которые больше не используются.
|
|
- Используйте secrets/auth profiles для токенов внешних API.
|
|
- Не вставляйте реальные токены в статические заголовки операции.
|
|
|
|
## Эксплуатация
|
|
|
|
- Включите мониторинг контейнеров.
|
|
- Следите за свободным местом на диске.
|
|
- Проверяйте размер PostgreSQL и директории artifact storage.
|
|
- Храните бэкапы PostgreSQL отдельно от application host.
|
|
- Перед обновлением фиксируйте текущие image tags.
|
|
- После обновления проверяйте UI, Admin API и MCP endpoint.
|
|
|