surshar / claude-code
Claude Code is an agentic coding tool that lives in your terminal, understands your codebase, and helps you code faster by executing routine tasks, explaining complex code, and handling git workflows - all through natural language commands.
Built by Anthropic · github.com/anthropics
Improve devcontainer Dockerfile following best practices
| @@ -4,7 +4,8 @@ | ||
| 4 | 4 | ENV TZ="$TZ" |
| 5 | 5 | |
| 6 | 6 | # Install basic development tools and iptables/ipset |
| 7 | -RUN apt update && apt install -y less \ | |
| 7 | +RUN apt-get update && apt-get install -y --no-install-recommends \ | |
| 8 | + less \ | |
| 8 | 9 | git \ |
| 9 | 10 | procps \ |
| 10 | 11 | sudo \ |
| @@ -21,7 +22,8 @@ | ||
| 21 | 22 | aggregate \ |
| 22 | 23 | jq \ |
| 23 | 24 | nano \ |
| 24 | - vim | |
| 25 | + vim \ | |
| 26 | + && apt-get clean && rm -rf /var/lib/apt/lists/* | |
| 25 | 27 | |
| 26 | 28 | # Ensure default node user has access to /usr/local/share |
| 27 | 29 | RUN mkdir -p /usr/local/share/npm-global && \ |
| @@ -44,10 +46,11 @@ | ||
| 44 | 46 | |
| 45 | 47 | WORKDIR /workspace |
| 46 | 48 | |
| 49 | +ARG GIT_DELTA_VERSION=0.18.2 | |
| 47 | 50 | RUN ARCH=$(dpkg --print-architecture) && \ |
| 48 | - wget "https://github.com/dandavison/delta/releases/download/0.18.2/git-delta_0.18.2_${ARCH}.deb" && \ | |
| 49 | - sudo dpkg -i "git-delta_0.18.2_${ARCH}.deb" && \ | |
| 50 | - rm "git-delta_0.18.2_${ARCH}.deb" | |
| 51 | + wget "https://github.com/dandavison/delta/releases/download/${GIT_DELTA_VERSION}/git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb" && \ | |
| 52 | + sudo dpkg -i "git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb" && \ | |
| 53 | + rm "git-delta_${GIT_DELTA_VERSION}_${ARCH}.deb" | |
| 51 | 54 | |
| 52 | 55 | # Set up non-root user |
| 53 | 56 | USER node |
| @@ -64,7 +67,8 @@ | ||
| 64 | 67 | ENV VISUAL nano |
| 65 | 68 | |
| 66 | 69 | # Default powerline10k theme |
| 67 | -RUN sh -c "$(wget -O- https://github.com/deluan/zsh-in-docker/releases/download/v1.2.0/zsh-in-docker.sh)" -- \ | |
| 70 | +ARG ZSH_IN_DOCKER_VERSION=1.2.0 | |
| 71 | +RUN sh -c "$(wget -O- https://github.com/deluan/zsh-in-docker/releases/download/v${ZSH_IN_DOCKER_VERSION}/zsh-in-docker.sh)" -- \ | |
| 68 | 72 | -p git \ |
| 69 | 73 | -p fzf \ |
| 70 | 74 | -a "source /usr/share/doc/fzf/examples/key-bindings.zsh" \ |
| @@ -3,7 +3,9 @@ | ||
| 3 | 3 | "build": { |
| 4 | 4 | "dockerfile": "Dockerfile", |
| 5 | 5 | "args": { |
| 6 | - "TZ": "${localEnv:TZ:America/Los_Angeles}" | |
| 6 | + "TZ": "${localEnv:TZ:America/Los_Angeles}", | |
| 7 | + "GIT_DELTA_VERSION": "0.18.2", | |
| 8 | + "ZSH_IN_DOCKER_VERSION": "1.2.0" | |
| 7 | 9 | } |
| 8 | 10 | }, |
| 9 | 11 | "runArgs": [ |