Files
tp/AGENTS.md
T
valitovgaziz 0898315910 remove legacy serv_spa (yalarba Vue SPA)
- Deleted main_dc/yalarba/serv_spa/ directory
- No docker-compose.yml changes needed (service was already unused)
- Updated docs references to point to yalarba-nuxt
- docker-compose.yml and nginx configs had no references to serv_spa
2026-06-12 11:26:18 +05:00

3.5 KiB

AGENTS.md

Repo overview

Docker Compose hosting for 4 websites (yalarba.ru, begushiybashkir.ru, easysite102.ru, valitovgaziz.ru).
All infrastructure lives under main_dc/. Root package.json is vestigial — do not use it.

Directory structure

main_dc/
  docker-compose.yml        -- single compose file orchestrating everything
  Makefile                  -- the primary dev/ops interface; use `make` not raw docker
  .env                      -- shared env: domains, email, api_es port
  BB/api_bb/                -- Go REST API (GORM+Chi), port 7777, DB: db_bb (5433)
  BB/bbvue/                 -- Vue 3 + Vite frontend for begushiybashkir.ru
  yalarba/api_tp/           -- Go REST API (GORM+Chi), port 8888, DB: db (5432)
  yalarba/api_es/           -- Go REST API (GORM+Chi), port 8088, DB: db (5432)
  yalarba/api_yal/          -- Go REST API (GORM+Chi), port 8787, DB: db (5432)
  yalarba/easySite/easySite/ -- Nuxt 4 SPA for easysite102.ru
  yalarba/yalarba-nuxt/      -- Nuxt 4 SPA for yalarba.ru
  valitovgaziz/analytics/   -- Node.js (Express) analytics server, port 9999
  valitovgaziz/html/         -- static HTML for valitovgaziz.ru
  nginx/                    -- nginx with automatic HTTP↔HTTPS switching
  certbot/                  -- Let's Encrypt cert management
  stubSite/                  -- placeholder site while building

Developer commands (always run from main_dc/)

Command What it does
make all Full cycle: down → git pull → build --no-cache → up -d → watch
make <svc> Full cycle for one service, e.g. make api_bb, make nginx, make es, make analytics
make bbvue Rebuild Vue frontend (calls npm run build in BB/bbvue/)
make vue_bb git pull + npm cache clean + bbvue build + watch
make wn watch -n2 docker ps — monitor containers
make bb_db psql -U postgres -d bb_db inside db_bb container

All build_* targets use --no-cache.
All full-cycle targets follow: stop_<svc> → git → build_<svc> → start_<svc> → wn.

Frontend dev (outside compose)

cd main_dc/BB/bbvue && npm run dev      # Vite dev server
cd main_dc/BB/bbvue && npm run lint     # ESLint --fix
cd main_dc/BB/bbvue && npm run format   # Prettier --write src/

# serv_spa удалён — yalarba работает через yalarba-nuxt (Nuxt SSR)

cd main_dc/yalarba/easySite/easySite && npm run dev  # Nuxt dev
cd main_dc/yalarba/easySite/easySite && npm run build # Nuxt build

Service quirks

  • Nginx SSL: switch-config.sh is all-or-nothing — HTTPS only activates when every domain has a cert. Until then, SSL port redirects back to HTTP.
  • yalarba/serv_spa/: удалён — был legacy Vue SPA, не использовался.
  • api_yal is the only container that runs as non-root. Runs on port 8787.
  • api_es port is configurable via API_ES_APP_PORT in .env (default 8088). All other API ports are hardcoded.
  • Databases: db (port 5432) is shared between api_tp, api_es, api_yal. db_bb (port 5433) is dedicated to api_bb.
  • GORM auto-migration: All Go APIs use GORM auto-migrate at startup — no manual migration tooling.
  • Keycloak referenced in Makefile targets but absent from docker-compose.yml — likely not deployed.
  • api_yal/testrunner: standalone Go test runner binary (not containerized), for running integration test suites.

Docs convention

READMEs and documentation are primarily in Russian. See documentation/ for Makefile, Docker, restart, and LLM info docs.