49 lines
1.1 KiB
Docker
49 lines
1.1 KiB
Docker
# 支持多架构构建(包括 ARM64)
|
||
# 使用 buildx 构建: docker buildx build --platform linux/arm64 -t <image> .
|
||
FROM python:3.11-slim
|
||
|
||
WORKDIR /app
|
||
|
||
# 安装系统依赖(包括 openssl 用于生成自签名证书)
|
||
RUN apt-get update && apt-get install -y \
|
||
curl \
|
||
git \
|
||
openssl \
|
||
&& rm -rf /var/lib/apt/lists/*
|
||
|
||
# 复制应用代码
|
||
COPY requirements.txt .
|
||
COPY app.py .
|
||
COPY k8s_manager.py .
|
||
COPY database.py .
|
||
COPY template_manager.py .
|
||
COPY gitee_manager.py .
|
||
COPY agent_code_generator.py .
|
||
COPY tool_generator_api.py .
|
||
COPY external_tool_api.py .
|
||
COPY tool_storage.py .
|
||
COPY agent_manager/ ./agent_manager/
|
||
|
||
# Heicode integration (NEW)
|
||
COPY config/ ./config/
|
||
COPY api/ ./api/
|
||
COPY models/ ./models/
|
||
|
||
# 创建工具存储目录
|
||
RUN mkdir -p /app/tool_storage
|
||
|
||
# 安装依赖
|
||
RUN pip install --no-cache-dir -r requirements.txt
|
||
|
||
# 设置环境变量
|
||
ENV PYTHONUNBUFFERED=1
|
||
ENV NAMESPACE=ai-agents
|
||
ENV SERVICE_PORT=8000
|
||
ENV SERVICE_HOST=0.0.0.0
|
||
|
||
# 暴露端口
|
||
EXPOSE 8000
|
||
|
||
# 运行应用
|
||
CMD ["python", "-m", "uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]
|