create-claude-workspace 1.1.1 → 1.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json
CHANGED
package/dist/template/Dockerfile
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
FROM node:latest
|
|
2
|
-
|
|
3
|
-
RUN apt-get update && \
|
|
4
|
-
apt-get install -y --no-install-recommends git ca-certificates curl gosu && \
|
|
5
|
-
apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
6
|
-
|
|
7
|
-
# Non-root user — Claude Code refuses --dangerously-skip-permissions as root
|
|
8
|
-
RUN useradd -m -s /bin/bash claude && \
|
|
9
|
-
mkdir -p /home/claude/.claude && \
|
|
10
|
-
chown -R claude:claude /home/claude
|
|
11
|
-
|
|
12
|
-
# Install Claude Code natively as the claude user
|
|
13
|
-
RUN gosu claude bash -c 'curl -fsSL https://claude.ai/install.sh | bash'
|
|
14
|
-
ENV PATH="/home/claude/.local/bin:$PATH"
|
|
15
|
-
|
|
16
|
-
# Git config for commits inside container
|
|
17
|
-
RUN git config --system user.name "Claude Code" && \
|
|
18
|
-
git config --system user.email "claude@localhost"
|
|
19
|
-
|
|
20
|
-
WORKDIR /project
|
|
21
|
-
|
|
22
|
-
COPY docker-entrypoint.sh /usr/local/bin/docker-entrypoint.sh
|
|
23
|
-
# Fix Windows CRLF line endings and set executable
|
|
24
|
-
RUN sed -i 's/\r$//' /usr/local/bin/docker-entrypoint.sh && \
|
|
25
|
-
chmod +x /usr/local/bin/docker-entrypoint.sh
|
|
26
|
-
|
|
27
|
-
ENTRYPOINT ["docker-entrypoint.sh", "bash"]
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
set +x
|
|
3
|
-
|
|
4
|
-
# npm auth — create .npmrc from env var if set
|
|
5
|
-
if [[ -n "${NPM_TOKEN:-}" ]]; then
|
|
6
|
-
npm_registry="${NPM_REGISTRY:-registry.npmjs.org}"
|
|
7
|
-
echo "//${npm_registry}/:_authToken=${NPM_TOKEN}" > /home/claude/.npmrc
|
|
8
|
-
chown claude:claude /home/claude/.npmrc
|
|
9
|
-
fi
|
|
10
|
-
|
|
11
|
-
# Restore .claude.json from backup if missing.
|
|
12
|
-
# .claude.json lives in $HOME but the volume only mounts $HOME/.claude/,
|
|
13
|
-
# so .claude.json is lost on container restart — restore from backup each time.
|
|
14
|
-
if [[ ! -f /home/claude/.claude.json ]]; then
|
|
15
|
-
backup=$(find /home/claude/.claude/backups -name '.claude.json.backup.*' 2>/dev/null | sort -V | tail -1)
|
|
16
|
-
if [[ -n "$backup" ]]; then
|
|
17
|
-
cp "$backup" /home/claude/.claude.json
|
|
18
|
-
chown claude:claude /home/claude/.claude.json
|
|
19
|
-
fi
|
|
20
|
-
fi
|
|
21
|
-
|
|
22
|
-
# Ensure claude user owns its home dir (volume mounts come in as root)
|
|
23
|
-
chown claude:claude /home/claude
|
|
24
|
-
chown -R claude:claude /home/claude/.claude 2>/dev/null || true
|
|
25
|
-
|
|
26
|
-
exec gosu claude "$@"
|