code / entrypoint.sh
huanbao's picture
Update entrypoint.sh
19971ab verified
Raw
History Blame Contribute Delete
1.77 kB
#!/bin/bash
set -e
# 1. 创建持久化挂载目录
mkdir -p /data/.claude /data/.cloudcli /data/app /data/.taskmaster
# 2. 软链接映射到持久化盘
if [ ! -L "$HOME/.claude" ]; then
rm -rf "$HOME/.claude"
ln -s /data/.claude "$HOME/.claude"
fi
if [ ! -L "$HOME/.cloudcli" ]; then
rm -rf "$HOME/.cloudcli"
ln -s /data/.cloudcli "$HOME/.cloudcli"
fi
if [ ! -L "$HOME/.taskmaster" ]; then
rm -rf "$HOME/.taskmaster"
ln -s /data/.taskmaster "$HOME/.taskmaster"
fi
# 3. 自动生成 settings.json(使用 ANTHROPIC_API_KEY 替代 AUTH_TOKEN)
mkdir -p "$HOME/.claude"
cat <<EOF > "$HOME/.claude/settings.json"
{
"cleanupPeriodDays": 720,
"env": {
"ANTHROPIC_BASE_URL": "${ANTHROPIC_BASE_URL:-}",
"ANTHROPIC_AUTH_TOKEN": "${ANTHROPIC_AUTH_TOKEN:-}",
"CLAUDE_CODE_ATTRIBUTION_HEADER": "0",
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1",
"DISABLE_INSTALLATION_CHECKS": "1",
"CLAUDE_CODE_PROXY_RESOLVES_HOSTS": "1",
"CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS": "1",
"ENABLE_TOOL_SEARCH": "true",
"DISABLE_AUTOUPDATER": "1",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-sonnet-x[1m]",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-sonnet-x[1m]",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-x[1m]",
"ANTHROPIC_MODEL": "claude-sonnet-x[1m]",
"ANTHROPIC_REASONING_MODEL": "claude-sonnet-x[1m]"
},
"permissions": {
"allow": [
"Read",
"Write",
"Edit",
"Bash(*)",
"Glob",
"Grep",
"Agent",
"WebFetch",
"WebSearch",
"NotebookEdit"
]
},
"model": "sonnet[1m]",
"skipWebFetchPreflight": true,
"effortLevel": "high",
"autoUpdatesChannel": "latest"
}
EOF
# 4. 切换到工作目录并启动命令
cd /data/app
exec "$@"