Local branch had diverged from origin/master (sibling commits on the same base). Rewrote local history linearly on top of origin/master, folding in all local content: exa/hot-platform discovery hunters, leaks ledger, nightly sweep orchestrator, updated .gitignore and skill docs, plus the latest hunt output and vault state. Remote-only files (vault keys, channel scripts) were restored rather than dropped, so the resulting tree is a full union of both sides.
1 line
1.2 KiB
JSON
1 line
1.2 KiB
JSON
{"repo": "b6nux9/learning-agent-development", "files": {"capstones/stage2-customer-service-agent/Dockerfile": {"62ad63bb69a08d887a53d04f5e2613601249223c": {"t": 1786068534.357834, "n": 679, "h": "443503565f88fdf2", "c": "# 阶段二 Capstone · 最小部署镜像\n# 构建:docker build -t cs-agent .\n# 运行:docker run -p 8000:8000 -e DEEPSEEK_API_KEY=sk-xxx cs-agent\n# ⚠️ key 在**运行时**用 -e 注入,绝不写进 Dockerfile / 镜像(否则 key 随镜像泄露)。\n\n# slim 基础镜像:够跑 Python,体积远小于完整版\nFROM python:3.12-slim\n\nWORKDIR /app\n\n# 先拷依赖清单再装 —— 利用 Docker 层缓存:代码改动不会让依赖层重装\nCOPY requirements-deploy.txt .\nRUN pip install --no-cache-dir -r requirements-deploy.txt\n\n# 再拷业务代码(放后面,改代码只重建这一层,依赖层命中缓存)\nCOPY tools.py agent.py reflect.py policy_rag.py app.py ./\n\n# 生产加固:用非 root 用户跑,缩小被攻破后的影响面\nRUN useradd -m appuser\nUSER appuser\n\nEXPOSE 8000\n\n# --host 0.0.0.0:容器里必须监听所有网卡,不能是 127.0.0.1(否则容器外连不进来)\nCMD [\"uvicorn\", \"app:app\", \"--host\", \"0.0.0.0\", \"--port\", \"8000\"]\n"}}}} |