mirror of
https://github.com/rennf93/roboco.git
synced 2026-08-03 07:23:24 +02:00
46 lines
1.2 KiB
Docker
46 lines
1.2 KiB
Docker
FROM debian:bookworm-slim
|
|
|
|
# Install dependencies
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
curl \
|
|
ca-certificates \
|
|
git \
|
|
python3 \
|
|
python3-pip \
|
|
python3-venv \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Install Node.js 22
|
|
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
|
|
&& apt-get install -y nodejs \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
# Install Claude Code CLI
|
|
RUN npm install -g @anthropic-ai/claude-code
|
|
|
|
# Install uv for Python package management
|
|
COPY --from=ghcr.io/astral-sh/uv:latest /uv /usr/local/bin/uv
|
|
|
|
# Create agent user BEFORE copying files
|
|
RUN useradd -m -s /bin/bash agent
|
|
|
|
# Create app directory and set ownership
|
|
WORKDIR /app
|
|
RUN chown agent:agent /app
|
|
|
|
# Copy MCP server code (needed for agent tools) AS agent
|
|
COPY --chown=agent:agent roboco /app/roboco
|
|
COPY --chown=agent:agent pyproject.toml uv.lock README.md /app/
|
|
|
|
# Switch to agent user for installing dependencies
|
|
USER agent
|
|
|
|
# Install Python dependencies for MCP servers (as agent)
|
|
RUN uv python install 3.13 && uv sync --frozen --python 3.13
|
|
|
|
# Claude Code will use mounted ~/.claude for auth
|
|
# Blueprints mounted at /app/agents/blueprints
|
|
# MCP config generated at runtime
|
|
|
|
ENTRYPOINT ["claude"]
|