admin/ 이 프론트 파일만 널려 있는 폴더였다. :9801 을 띄우는 코드도 solution/backend 안에 얹혀 있어서, 폴더만 봐서는 admin 에 백엔드가 있다는 걸 몰랐다. admin/backend/ main.py · app.py (:9801 진입점. 도메인 코드는 PYTHONPATH 로 solution/backend) admin/frontend/ 운영 화면 패키지 이름도 폴더에 맞췄다: @o2o/front → @o2o/frontend. 이미지 빌드 컨텍스트를 레포 루트로 올렸다 — 진입점(admin/)과 도메인 코드(solution/)가 한 이미지에 들어와야 한다. 루트 .dockerignore 로 프론트·문서·시크릿을 잘라냈다. ★ 실측으로 잡은 것: 패키지명을 바꾸면서 compose 의 `-w @o2o/front` 를 안 고쳐 web 컨테이너가 `No workspaces found` 로 재기동 루프에 빠져 있었다. 주석은 짧게 줄였다. 검증: lint·build 6개 전부 0. 컨테이너 5개 엔드포인트(9800·9801·3000·3002·80) 전부 200. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_019uYhHQdssRubirPirrdJJC
30 lines
1.0 KiB
JSON
30 lines
1.0 KiB
JSON
{
|
|
"name": "o2o-web4ai",
|
|
"private": true,
|
|
"version": "0.0.0",
|
|
"type": "module",
|
|
"workspaces": [
|
|
"solution/shared",
|
|
"solution/frontend",
|
|
"solution/site",
|
|
"admin/frontend"
|
|
],
|
|
"scripts": {
|
|
"dev": "npm run dev -w @o2o/frontend",
|
|
"dev:frontend": "npm run dev -w @o2o/frontend",
|
|
"dev:admin": "npm run dev -w @o2o/admin",
|
|
"dev:site": "npm run dev -w @o2o/site",
|
|
"build": "npm run build -w @o2o/frontend && npm run build -w @o2o/admin && npm run build -w @o2o/site",
|
|
"build:frontend": "npm run build -w @o2o/frontend",
|
|
"build:admin": "npm run build -w @o2o/admin",
|
|
"build:site": "npm run build -w @o2o/site",
|
|
"prerender": "npm run prerender -w @o2o/site",
|
|
"lint": "npm run lint -w @o2o/frontend && npm run lint -w @o2o/admin && npm run lint -w @o2o/site",
|
|
"orval": "npm run orval -w @o2o/frontend",
|
|
"clean": "rm -rf solution/frontend/dist admin/frontend/dist solution/site/dist solution/site/.ssr-dist node_modules/.vite"
|
|
},
|
|
"engines": {
|
|
"node": ">=20"
|
|
}
|
|
}
|