From b25c72cc8c3a3013e42b4b0b739e38eee0deaf26 Mon Sep 17 00:00:00 2001 From: Conan Scott Date: Mon, 2 Feb 2026 00:14:07 +0000 Subject: [PATCH] Initial commit: Dockerfile with Swiss Army Knife tools --- Dockerfile | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..a8cdaa2 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,31 @@ +FROM debian:bookworm-slim + +# Avoid interactive prompts +ENV DEBIAN_FRONTEND=noninteractive + +# Update and install Swiss Army Knife tools +RUN apt-get update && apt-get install -y curl wget git jq unzip tar vim nano python3 python3-pip python3-venv build-essential iputils-ping dnsutils net-tools nodejs npm ffmpeg openssh-server sudo && rm -rf /var/lib/apt/lists/* + +# Install yq (binary release for latest version) +RUN wget https://github.com/mikefarah/yq/releases/latest/download/yq_linux_amd64 -O /usr/bin/yq && chmod +x /usr/bin/yq + +# Setup SSH directory +RUN mkdir /var/run/sshd + +# Create a user 'claw' with sudo access +# Passwordless sudo allowed for friction-free automation +RUN useradd -m -s /bin/bash claw && echo "claw ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers + +# Prepare volume mount point +# Mount persistent storage here +VOLUME /data +RUN chown claw:claw /data + +# Set working directory to the persistent volume +WORKDIR /data + +# Expose SSH port +EXPOSE 22 + +# Start SSH daemon +CMD ["/usr/sbin/sshd", "-D"] \ No newline at end of file