Inital commit
This commit is contained in:
40
Dockerfile
Normal file
40
Dockerfile
Normal file
@@ -0,0 +1,40 @@
|
||||
FROM debian:trixie
|
||||
|
||||
RUN apt-get update -y && \
|
||||
apt-get install -y --no-install-recommends \
|
||||
git \
|
||||
nodejs \
|
||||
npm \
|
||||
vim \
|
||||
btop \
|
||||
curl \
|
||||
wget \
|
||||
jq \
|
||||
yq \
|
||||
ca-certificates \
|
||||
ssh \
|
||||
dnsutils && \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ENV COLORTERM=truecolor
|
||||
|
||||
# Install Openspec
|
||||
RUN npm i -g @fission-ai/openspec@latest
|
||||
|
||||
RUN useradd -ms /bin/bash m
|
||||
|
||||
USER m
|
||||
WORKDIR /workspace
|
||||
|
||||
# Install Claude Code CLI
|
||||
RUN curl -fsSL https://claude.ai/install.sh | bash
|
||||
|
||||
RUN mkdir -p ~/.ssh
|
||||
RUN chmod 700 ~/.ssh
|
||||
RUN ssh-keyscan github.com >> ~/.ssh/known_hosts
|
||||
|
||||
RUN echo 'alias clauded="claude --dangerously-skip-permissions"' >> ~/.bashrc
|
||||
RUN echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
|
||||
|
||||
# Default command - keep container running
|
||||
CMD ["bash"]
|
||||
42
Makefile
Normal file
42
Makefile
Normal file
@@ -0,0 +1,42 @@
|
||||
DOCKER_IMAGE_NAME = claude-sdr-recorder
|
||||
DOCKER_CONTAINER_NAME = claude-sdr-recorder
|
||||
|
||||
.PHONY: build run stop shell restart clean logs status
|
||||
|
||||
build:
|
||||
docker build -t $(DOCKER_IMAGE_NAME) .
|
||||
|
||||
run:
|
||||
docker run -d \
|
||||
--name $(DOCKER_CONTAINER_NAME) \
|
||||
--hostname $(DOCKER_CONTAINER_NAME) \
|
||||
-v $(PWD):/workspace \
|
||||
-v $(HOME)/.claude:/home/m/.claude \
|
||||
-e CLAUDE_CONFIG_DIR=/home/m/.claude \
|
||||
-v $(HOME)/.ssh/known_hosts:/home/m/.ssh/known_hosts:ro \
|
||||
-v $(HOME)/.gitconfig:/home/m/.gitconfig:ro \
|
||||
-v $(HOME)/.gitignore:/home/m/.gitignore:ro \
|
||||
-v $(PWD)/ssh_config:/home/m/.ssh/config \
|
||||
-v /run/host-services/ssh-auth.sock:/run/host-services/ssh-auth.sock \
|
||||
-e SSH_AUTH_SOCK=/run/host-services/ssh-auth.sock \
|
||||
-it \
|
||||
$(DOCKER_IMAGE_NAME)
|
||||
@echo "Container started. Use 'make shell' to access it"
|
||||
|
||||
stop:
|
||||
docker stop $(DOCKER_CONTAINER_NAME) || true
|
||||
docker rm $(DOCKER_CONTAINER_NAME) || true
|
||||
|
||||
shell:
|
||||
docker exec -it $(DOCKER_CONTAINER_NAME) bash
|
||||
|
||||
restart: stop run
|
||||
|
||||
clean: stop
|
||||
docker rmi $(DOCKER_IMAGE_NAME) || true
|
||||
|
||||
logs:
|
||||
docker logs -f $(DOCKER_CONTAINER_NAME)
|
||||
|
||||
status:
|
||||
@docker ps -a --filter name=$(DOCKER_CONTAINER_NAME)
|
||||
Reference in New Issue
Block a user