Files
mono/.dockerignore
coopops 726d0c620e chore(docker): multi-stage mono-base + testnet smoke-stack (story 6.1)
Корневой Dockerfile переписан под две стадии: builder с full toolchain
(apt dev-headers, WeasyPrint в venv, pnpm install + lerna run build +
pnpm prune --prod --ignore-scripts) и runtime — slim node:22-slim
без gcc/dev-headers, только runtime-libs WeasyPrint + готовый /app.

Локально сжалось с 7.36GB до 2.95GB (-60%). Образы наследники
(dicoop/desktop / coopback / cooparser / notificator / notifications)
автоматом получат тонкий runtime через build-containers.yaml.

Безопасность для playbook'ов monocoop: их docker-compose.yaml собирает
сервисы из components/{controller,parser,desktop}/Dockerfile (не
корневого) и монтирует ./:/app — корневой mono-base туда вообще не
попадает.

.dockerignore — выкинул .git (962MB), blockchain-data/wallet-data,
_blago, coverage, *.log и т.п. Build-context теперь намного легче.

docker-compose.testnet.yml — локальный 3-сервисный smoke-стек:
ke-node (dicoop/blockchain_v5.1.1:dev) + ke-contracts (one-shot
copy из dicoop/contracts:dev в shared volume) + ke-bootstrap
(mono-base, node /app/components/boot/dist/index.cjs boot:remote).
Изолирован от dev-ноды mono-ai-4-node-1 через отдельную сеть и порты
8919/9907/8101.

В playbook'ах не применяется (там docker-compose.yaml, не .testnet.yml).

.gitignore — добавлен .env.testnet (содержит EOSIO_*KEY).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 15:21:17 +00:00

42 lines
1014 B
Plaintext

# Не тащить в build-context — экономит время `docker build` (особенно
# на крупных репах с .git под 1GB) и не пачкает финальный образ.
node_modules
**/node_modules
dist
**/dist
.git
.github
.gitignore
.cursor
**/.DS_Store
# State от локальных runtime-сценариев (boot:remote / dev-нода / wallet)
**/blockchain-data
**/wallet-data
**/keosd-data
# CI/coverage/тестовые артефакты
coverage
**/coverage
.nyc_output
*.log
# BMad/blago workspace папки (не относятся к билду образа)
_blago
**/_blago
.bmad-core
.bmad-output
# Локальные секреты (на всякий случай — секреты должны идти через
# build-args / docker-compose environment, не через COPY)
.env
.env.*
!.env-example
**/.env
**/.env.*
!**/.env-example
# Артефакты других сервисов
components/desktop/.quasar
components/contracts/build