feat: migrate to VitePress from monorepo docs, add test-contour section
This commit is contained in:
+149
@@ -0,0 +1,149 @@
|
||||
# Быстрый старт
|
||||
|
||||
## Требования
|
||||
|
||||
- Docker и Docker Compose v2.
|
||||
- Доступ к приватным исходникам всех приложений, если нужны `frontend`, `adminPanel`, `sovamed` или `kiosk`.
|
||||
- Свободные порты `80`, `443`, `5432`, `3000`, `3001`, `8080`, `9090` в зависимости от запускаемого набора сервисов.
|
||||
- Локальный `.env` в корне репозитория.
|
||||
|
||||
## Запуск dev-окружения
|
||||
|
||||
Для безопасной локальной разработки используйте отдельный local-контур. Он не читает корневой `.env`, не использует продовые домены и поднимает отдельные контейнеры:
|
||||
|
||||
```bash
|
||||
make local-up
|
||||
```
|
||||
|
||||
Локальные адреса:
|
||||
|
||||
- backend: `http://localhost:8081`;
|
||||
- cabinet: `http://localhost:8082`;
|
||||
- PostgreSQL: `localhost:15432`;
|
||||
- Bitrix MySQL mock: `localhost:13306`;
|
||||
- Redis: `localhost:16379`.
|
||||
|
||||
Остановка:
|
||||
|
||||
```bash
|
||||
make local-down
|
||||
```
|
||||
|
||||
Остановка с удалением локальных volumes:
|
||||
|
||||
```bash
|
||||
make local-clean
|
||||
```
|
||||
|
||||
Повторное наполнение локальных БД тестовыми данными:
|
||||
|
||||
```bash
|
||||
make local-seed
|
||||
```
|
||||
|
||||
Сборка ассетов cabinet. Нужна, если `http://localhost:8082/login` отдает `500` с ошибкой про `public/build/entrypoints.json`:
|
||||
|
||||
```bash
|
||||
make local-assets
|
||||
```
|
||||
|
||||
Проверка, что локальный контур работает:
|
||||
|
||||
```bash
|
||||
make local-smoke
|
||||
```
|
||||
|
||||
Исторические команды ниже используют общий корневой `.env`. Не запускайте их для локальной разработки, если есть риск обращения к внешним окружениям.
|
||||
|
||||
Из корня репозитория:
|
||||
|
||||
```bash
|
||||
make dev
|
||||
```
|
||||
|
||||
Команда собирает и запускает:
|
||||
|
||||
- сети из `environments/docker-compose.networks.yml`;
|
||||
- PostgreSQL и Redis из `environments/docker-compose.dbs.yml`;
|
||||
- nginx, PHP-FPM и Next.js из `environments/docker-compose.apps.yml`;
|
||||
- Node.js helper-контейнер из `environments/docker-compose.dev.yml`.
|
||||
|
||||
Фактически `make dev` вызывает `docker compose` с `COMPOSE_PROJECT_ENV=dev` и `COMPOSE_NODE_ENV=development`.
|
||||
|
||||
## Запуск полного набора
|
||||
|
||||
```bash
|
||||
make up
|
||||
```
|
||||
|
||||
Этот сценарий использует production-переменные окружения и дополнительно подключает мониторинг из `environments/docker-compose.monitoring.yml`.
|
||||
|
||||
## Остановка
|
||||
|
||||
```bash
|
||||
make down
|
||||
```
|
||||
|
||||
Полная остановка с удалением volumes:
|
||||
|
||||
```bash
|
||||
make clean
|
||||
```
|
||||
|
||||
Полная очистка Docker на машине:
|
||||
|
||||
```bash
|
||||
make prune
|
||||
```
|
||||
|
||||
## Команды внутри контейнеров
|
||||
|
||||
Установка PHP-зависимостей backend:
|
||||
|
||||
```bash
|
||||
docker exec -it php84 composer install
|
||||
```
|
||||
|
||||
Установка PHP-зависимостей cabinet:
|
||||
|
||||
```bash
|
||||
docker exec -it php82 composer install
|
||||
```
|
||||
|
||||
Установка и сборка frontend-ассетов cabinet:
|
||||
|
||||
```bash
|
||||
docker exec -it php82 yarn install
|
||||
docker exec -it php82 yarn dev
|
||||
```
|
||||
|
||||
Миграции backend:
|
||||
|
||||
```bash
|
||||
docker exec -it php84 php bin/console doctrine:migrations:migrate
|
||||
```
|
||||
|
||||
Миграции cabinet:
|
||||
|
||||
```bash
|
||||
docker exec -it php82 php bin/console doctrine:migrations:migrate
|
||||
```
|
||||
|
||||
## Локальные домены
|
||||
|
||||
nginx-конфиги ожидают домены вроде:
|
||||
|
||||
- `api.sovamed.ru` -> `apps/backend/public`;
|
||||
- `cabinet.sovamed.ru` -> `apps/cabinet/public`;
|
||||
- `dev.sovamed.ru`, `dev.wmtmed.ru`, `adm.sovamed.ru` и другие домены для отсутствующих сейчас приложений.
|
||||
|
||||
Для локальной разработки обычно нужно добавить домены в `/etc/hosts` на `127.0.0.1` и иметь dev-сертификаты в `infrastructure/nginx/certs`.
|
||||
|
||||
## Проверка состояния
|
||||
|
||||
```bash
|
||||
docker compose ps
|
||||
docker logs nginx --tail=100
|
||||
docker logs php84 --tail=100
|
||||
docker logs php82 --tail=100
|
||||
```
|
||||
Reference in New Issue
Block a user