Files
claude-docker/Dockerfile

28 lines
954 B
Docker

FROM node:24-bookworm-slim
RUN apt-get update && apt-get install -y \
git curl wget jq netcat-openbsd socat \
iputils-ping iproute2 dnsutils python3 \
unzip zstd procps lsof psmisc \
&& rm -rf /var/lib/apt/lists/*
ARG UID=1000
ARG GID=1000
RUN GCS="https://storage.googleapis.com/claude-code-dist-86c565f3-f756-42ad-8dfa-d59b1c096819/claude-code-releases" \
&& VERSION=$(curl -fsSL "$GCS/latest") \
&& CHECKSUM=$(curl -fsSL "$GCS/$VERSION/manifest.json" | jq -r '.platforms["linux-x64"].checksum') \
&& curl -fsSL "$GCS/$VERSION/linux-x64/claude" -o /tmp/claude \
&& echo "$CHECKSUM /tmp/claude" | sha256sum -c \
&& mv /tmp/claude /usr/local/bin/claude \
&& chmod +x /usr/local/bin/claude
RUN (userdel node 2>/dev/null || true) \
&& (groupdel node 2>/dev/null || true) \
&& groupadd -g $GID claude \
&& useradd -u $UID -g $GID -m -s /bin/bash claude
USER claude
WORKDIR /workspace
CMD ["claude"]