693cd952cd
仓库首次入库(此前仅存在于本地工作区与测试服构建产物中,未上传)。 改动(src/knowledge_adapter/asset_content_processor.py): - 新增 _TRUNCATED_TRAILING_MARKDOWN_RESOURCE_IMAGE 规则,清除 chunk 末尾被截断的  - 回归测试 tests/test_asset_content_processor.py:: test_truncated_trailing_markdown_resource_image_is_removed 验证证据: - 测试服 120.76.217.51,镜像 knowledge-adapter-service:reviewed-test-aeab4b5fca2d (release aeab4b5fca2d8661):KB d015d05c-25c8-4d63-b2ab-e8590d3c2dfb 5 个查询全部 http=200、records=5、残留 resource:// = 0;KB b9dacd62 无退化;容器日志无 error/exception - 本地:pytest 141 项全通过、ruff 全通过 - 该文件与 258c31e0fe07fd08 源码的差异经逐文件 md5 比对,为唯一变更文件
26 lines
868 B
Docker
26 lines
868 B
Docker
# syntax=docker/dockerfile:1.7
|
|
|
|
FROM ghcr.io/astral-sh/uv:0.8.10 AS uv
|
|
|
|
FROM python:3.12.11-slim-bookworm AS builder
|
|
ENV UV_LINK_MODE=copy \
|
|
UV_COMPILE_BYTECODE=1
|
|
WORKDIR /app
|
|
COPY --from=uv /uv /usr/local/bin/uv
|
|
COPY pyproject.toml uv.lock ./
|
|
COPY src ./src
|
|
RUN uv sync --frozen --no-dev --no-editable
|
|
|
|
FROM python:3.12.11-slim-bookworm AS runtime
|
|
RUN groupadd --gid 10001 adapter \
|
|
&& useradd --uid 10001 --gid 10001 --no-create-home --shell /usr/sbin/nologin adapter
|
|
ENV VIRTUAL_ENV=/app/.venv \
|
|
PATH=/app/.venv/bin:$PATH \
|
|
PYTHONDONTWRITEBYTECODE=1 \
|
|
PYTHONUNBUFFERED=1
|
|
WORKDIR /app
|
|
COPY --from=builder --chown=10001:10001 /app/.venv /app/.venv
|
|
USER 10001:10001
|
|
EXPOSE 8080
|
|
CMD ["uvicorn", "knowledge_adapter.entrypoint:create_production_app", "--factory", "--host", "0.0.0.0", "--port", "8080", "--no-access-log", "--timeout-keep-alive", "5"]
|