diff options
Diffstat (limited to 'docker_build/Dockerfile')
| -rw-r--r-- | docker_build/Dockerfile | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/docker_build/Dockerfile b/docker_build/Dockerfile index f5d0a46..5df57d2 100644 --- a/docker_build/Dockerfile +++ b/docker_build/Dockerfile | |||
| @@ -15,12 +15,10 @@ RUN mkdir -p /var/run/sshd && \ | |||
| 15 | sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && \ | 15 | sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config && \ |
| 16 | sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config && \ | 16 | sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config && \ |
| 17 | echo "AllowAgentForwarding yes" >> /etc/ssh/sshd_config | 17 | echo "AllowAgentForwarding yes" >> /etc/ssh/sshd_config |
| 18 | |||
| 19 | # Setup SSH directory for root and ensure root has valid shell | 18 | # Setup SSH directory for root and ensure root has valid shell |
| 20 | RUN mkdir -p /root/.ssh && \ | 19 | RUN mkdir -p /root/.ssh && \ |
| 21 | chmod 700 /root/.ssh && \ | 20 | chmod 700 /root/.ssh && \ |
| 22 | usermod -s /bin/bash root | 21 | usermod -s /bin/bash root |
| 23 | |||
| 24 | # Copy SSH public keys from ssh-keys directory into the image | 22 | # Copy SSH public keys from ssh-keys directory into the image |
| 25 | COPY ssh-keys/*.pub /tmp/ssh-keys/ | 23 | COPY ssh-keys/*.pub /tmp/ssh-keys/ |
| 26 | RUN cat /tmp/ssh-keys/*.pub > /root/.ssh/authorized_keys && \ | 24 | RUN cat /tmp/ssh-keys/*.pub > /root/.ssh/authorized_keys && \ |
| @@ -41,6 +39,18 @@ RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y && \ | |||
| 41 | source "$HOME/.cargo/env" && \ | 39 | source "$HOME/.cargo/env" && \ |
| 42 | cargo install cargo-clone-crate cargo-edit cargo-info evcxr_jupyter bacon du-dust | 40 | cargo install cargo-clone-crate cargo-edit cargo-info evcxr_jupyter bacon du-dust |
| 43 | 41 | ||
| 42 | # Install Node.js via nvm and claude-code | ||
| 43 | RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash && \ | ||
| 44 | export NVM_DIR="$HOME/.nvm" && \ | ||
| 45 | [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" && \ | ||
| 46 | nvm install 22 && \ | ||
| 47 | npm install -g @anthropic-ai/claude-code | ||
| 48 | |||
| 49 | # Add nvm to bashrc for future sessions | ||
| 50 | RUN echo 'export NVM_DIR="$HOME/.nvm"' >> ~/.bashrc && \ | ||
| 51 | echo '[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"' >> ~/.bashrc && \ | ||
| 52 | echo '[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"' >> ~/.bashrc | ||
| 53 | |||
| 44 | # Set working directory | 54 | # Set working directory |
| 45 | WORKDIR /root | 55 | WORKDIR /root |
| 46 | 56 | ||
| @@ -48,4 +58,4 @@ WORKDIR /root | |||
| 48 | EXPOSE 22 | 58 | EXPOSE 22 |
| 49 | 59 | ||
| 50 | # Start SSH daemon | 60 | # Start SSH daemon |
| 51 | CMD ["/usr/sbin/sshd", "-D", "-e"] \ No newline at end of file | 61 | CMD ["/usr/sbin/sshd", "-D", "-e"] |
