[ PROMPT_NODE_25302 ]
代码库分析 (部署)
[ SKILL_DOCUMENTATION ]
# 代码库分析 (部署)
在准备 Render 部署时,使用此参考进行框架特定的检测以及构建/启动命令的选择。
## Node.js 项目
- 读取 `package.json` 以检测框架 (Express, Next.js, Nest.js, Fastify 等)
- 检查 `scripts` 部分以获取构建/启动命令
- 查看 `engines` 字段获取 Node 版本,或查看 `.node-versions` 或 `.nvmrc`
- 检测包管理器:
- `bun.lockb` (Bun) -> `bun install --frozen-lockfile` / `bun run start`
- `pnpm-lock.yaml` (pnpm) -> `pnpm install --frozen-lockfile` / `pnpm start`
- `yarn.lock` (Yarn) -> `yarn install --frozen-lockfile` / `yarn start`
- `package-lock.json` (npm) -> `npm ci` / `npm start`
- 仅 `package.json` (npm 回退) -> `npm install` / `npm start`
## Python 项目
- 检查依赖文件并检测包管理器:
- `uv.lock` (uv) -> `uv sync` / `uv run gunicorn app:app`
- `poetry.lock` (Poetry) -> `poetry install --no-dev` / `poetry run gunicorn app:app`
- `Pipfile.lock` (pipenv) -> `pipenv install --deploy` / `pipenv run gunicorn app:app`
- `requirements.txt` (pip) -> `pip install -r requirements.txt` / `gunicorn app:app`
- 仅 `pyproject.toml` -> 检查 `[tool.uv]`, `[tool.poetry]`,或使用 pip
- 检测框架:Django, Flask, FastAPI, Celery 等
- 检查 Python 版本:
- `.python-version` (uv/pyenv)
- `runtime.txt` (Render 特定)
- `pyproject.toml` (requires-python 字段)
## Go 项目
- 读取 `go.mod` 获取依赖项
- 识别 Web 框架 (Gin, Echo, Chi, Fiber, net/http)
- 注意 `go.mod` 中的 Go 版本
## 静态站点
- 查找构建输出目录 (`build/`, `dist/`, `site/`, `public/`)
- 检测框架:React, Vue, Gatsby, Next.js (静态导出)
- 检查 `package.json` 中的构建脚本
## Docker 项目
- 查找 `Dockerfile`
- 注意暴露的端口和构建阶段
- 检查 `docker-compose.yml` 模式
## 需要提取的关键信息
- 构建命令 (例如 `npm ci`, `pip install -r requirements.txt`, `go build`)
- 启动命令 (例如 `npm start`, `gunicorn app:app`, `./bin/app`)
- 代码中使用的环境变量 (API 密钥, 数据库 URL, 密钥)
- 数据库需求 (PostgreSQL, Redis, MongoDB)
- 端口绑定 (检查应用程序是否使用环境变量来运行端口)