1- # Dev Container compatible avec Claude Code
1+ # Claude Code compatible Dev Container
22# Base: Debian 13 (Trixie)
33FROM debian:trixie-slim
44
55LABEL org.opencontainers.image.source="https://github.com/Pikatsuto/DevContainer-Claude-Code-Compatible"
66LABEL org.opencontainers.image.description="Dev Container with Claude Code pre-installed on Debian 13"
77LABEL org.opencontainers.image.licenses="MIT"
88
9- # Arguments pour la configuration
9+ # Configuration arguments
1010ARG USERNAME=vscode
1111ARG USER_UID=1000
1212ARG USER_GID=$USER_UID
1313
1414ENV DEBIAN_FRONTEND=noninteractive
1515ENV PATH="/home/vscode/.local/bin:$PATH"
1616
17- # Installation : Claude Code + outils d'analyse et debug
17+ # Install : Claude Code dependencies + analysis and debug tools
1818RUN apt-get update && apt-get install -y --no-install-recommends \
19- # Requis pour Claude Code
19+ # Required for Claude Code
2020 ca-certificates \
2121 curl \
2222 git \
2323 sudo \
2424 openssh-client \
25- # Shell et plugins
25+ # Shell and plugins
2626 zsh \
2727 zsh-autosuggestions \
2828 zsh-syntax-highlighting \
29- # Outils d'analyse et debug
29+ # Analysis and debug tools
3030 ripgrep \
3131 fd-find \
3232 jq \
@@ -37,47 +37,47 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
3737 tree \
3838 && rm -rf /var/lib/apt/lists/*
3939
40- # Installation de GitHub CLI
40+ # Install GitHub CLI
4141RUN curl -fsSL https://cli.github.com/packages/githubcli-archive-keyring.gpg | dd of=/usr/share/keyrings/githubcli-archive-keyring.gpg \
4242 && chmod go+r /usr/share/keyrings/githubcli-archive-keyring.gpg \
4343 && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
4444 && apt-get update \
4545 && apt-get install -y gh \
4646 && rm -rf /var/lib/apt/lists/*
4747
48- # Installation de Starship (prompt moderne )
48+ # Install Starship (modern prompt )
4949RUN curl -fsSL https://starship.rs/install.sh | sh -s -- -y
5050
51- # Création de l'utilisateur non-root avec zsh
51+ # Create non-root user with zsh
5252RUN groupadd --gid $USER_GID $USERNAME \
5353 && useradd --uid $USER_UID --gid $USER_GID -m -s /bin/zsh $USERNAME \
5454 && echo $USERNAME ALL=\( root\) NOPASSWD:ALL > /etc/sudoers.d/$USERNAME \
5555 && chmod 0440 /etc/sudoers.d/$USERNAME
5656
57- # Installation de Claude Code
57+ # Install Claude Code
5858RUN curl -fsSL https://claude.ai/install.sh | bash
5959
60- # Préparer les répertoires Claude Code
60+ # Prepare Claude Code directories
6161RUN mkdir -p /home/$USERNAME/.claude && \
6262 chown -R $USERNAME:$USERNAME /home/$USERNAME/.claude
6363
64- # Configuration zsh pour l'utilisateur
64+ # Configure zsh for user
6565RUN cat <<'EOF' > /home/$USERNAME/.zshrc
66- # Historique
66+ # History
6767HISTFILE=~/.zsh_history
6868HISTSIZE=10000
6969SAVEHIST=10000
7070setopt SHARE_HISTORY
7171setopt HIST_IGNORE_DUPS
7272setopt HIST_IGNORE_SPACE
7373
74- # Navigation style fish
74+ # Fish- style navigation
7575setopt AUTO_CD
7676setopt AUTO_PUSHD
7777setopt PUSHD_IGNORE_DUPS
7878setopt CORRECT
7979
80- # Complétion avancée
80+ # Advanced completion
8181autoload -Uz compinit && compinit
8282zstyle ':completion:*' menu select
8383zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}'
@@ -87,10 +87,10 @@ zstyle ':completion:*' list-colors "${(s.:.)LS_COLORS}"
8787source /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh
8888source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
8989
90- # Couleur des suggestions (gris clair )
90+ # Suggestion color (light gray )
9191ZSH_AUTOSUGGEST_HIGHLIGHT_STYLE='fg=244'
9292
93- # Raccourcis clavier style fish
93+ # Fish- style keybindings
9494bindkey '^[[A' history-search-backward
9595bindkey '^[[B' history-search-forward
9696bindkey '^[[1;5C' forward-word
@@ -100,7 +100,7 @@ bindkey '^[[F' end-of-line
100100bindkey '^[[3~' delete-char
101101bindkey '^ ' autosuggest-accept
102102
103- # Aliases utiles
103+ # Useful aliases
104104alias ls='ls --color=auto'
105105alias ll='ls -lah'
106106alias la='ls -A'
@@ -112,9 +112,9 @@ alias fd='fdfind'
112112eval "$(starship init zsh)"
113113EOF
114114
115- # Configuration Starship (thème sobre et informatif )
115+ # Configure Starship (minimal informative theme )
116116RUN mkdir -p /home/$USERNAME/.config && cat <<'EOF' > /home/$USERNAME/.config/starship.toml
117- # Prompt minimaliste style fish
117+ # Minimal fish- style prompt
118118format = """
119119$directory\
120120$git_branch\
0 commit comments