feat: 更新 Dockerfile 和 devcontainer.json,添加别名和配置目录
This commit is contained in:
@@ -77,7 +77,8 @@ RUN touch /home/usr_vscode/.zshrc \
|
|||||||
-p fzf \
|
-p fzf \
|
||||||
-a "source <(fzf --zsh)" \
|
-a "source <(fzf --zsh)" \
|
||||||
-a "export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhistory/.bash_history" \
|
-a "export PROMPT_COMMAND='history -a' && export HISTFILE=/commandhistory/.bash_history" \
|
||||||
-x
|
-x \
|
||||||
|
&& echo "alias claude='claude --dangerously-skip-permissions'" >> /home/usr_vscode/.zshrc
|
||||||
# -a "source /usr/share/doc/fzf/examples/key-bindings.zsh" \
|
# -a "source /usr/share/doc/fzf/examples/key-bindings.zsh" \
|
||||||
# -a "source /usr/share/doc/fzf/examples/completion.zsh" \
|
# -a "source /usr/share/doc/fzf/examples/completion.zsh" \
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,9 @@
|
|||||||
|
/**
|
||||||
|
* 一些参考链接:
|
||||||
|
* https://containers.dev/implementors/json_reference/#variables-in-devcontainerjson
|
||||||
|
* https://code.claude.com/docs/zh-CN/devcontainer
|
||||||
|
*/
|
||||||
|
|
||||||
{
|
{
|
||||||
"name": "Sandbox Dev Container",
|
"name": "Sandbox Dev Container",
|
||||||
"forwardPorts": [4730, 4731], // vscode://settings/remote.localPortHost -> 默认只监听 localhost
|
"forwardPorts": [4730, 4731], // vscode://settings/remote.localPortHost -> 默认只监听 localhost
|
||||||
@@ -71,25 +77,26 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
"containerEnv": {
|
"containerEnv": {
|
||||||
// "CLAUDE_CONFIG_DIR": "/home/usr_vscode/.claude",
|
// "CLAUDE_CONFIG_DIR": "/home/usr_vscode/.claude",
|
||||||
"ANTHROPIC_AUTH_TOKEN": "${localEnv:ANTHROPIC_AUTH_TOKEN}",
|
"ANTHROPIC_AUTH_TOKEN": "${localEnv:ANTHROPIC_AUTH_TOKEN}",
|
||||||
"ANTHROPIC_BASE_URL": "${localEnv:ANTHROPIC_BASE_URL}",
|
"ANTHROPIC_BASE_URL": "${localEnv:ANTHROPIC_BASE_URL}",
|
||||||
"GEMINI_API_KEY": "${localEnv:GEMINI_API_KEY}",
|
"GEMINI_API_KEY": "${localEnv:GEMINI_API_KEY}",
|
||||||
"GOOGLE_GEMINI_BASE_URL": "${localEnv:GOOGLE_GEMINI_BASE_URL}",
|
"GOOGLE_GEMINI_BASE_URL": "${localEnv:GOOGLE_GEMINI_BASE_URL}",
|
||||||
|
"CLAUDE_CONFIG_DIR": "/home/usr_vscode/.claude",
|
||||||
"NODE_OPTIONS": "--max-old-space-size=4096"
|
"NODE_OPTIONS": "--max-old-space-size=4096"
|
||||||
},
|
},
|
||||||
"remoteUser": "usr_vscode",
|
"remoteUser": "usr_vscode",
|
||||||
"mounts": [
|
"mounts": [
|
||||||
// "source=dev-container-bashhistory-${devcontainerId},target=/commandhistory,type=volume"
|
"source=${localWorkspaceFolderBasename}-bashhistory,target=/commandhistory,type=volume",
|
||||||
|
"source=${localWorkspaceFolderBasename}-claude-code-config,target=/home/usr_vscode/.claude,type=volume",
|
||||||
"source=${localWorkspaceFolderBasename}-node_modules,target=${containerWorkspaceFolder}/node_modules,type=volume"
|
"source=${localWorkspaceFolderBasename}-node_modules,target=${containerWorkspaceFolder}/node_modules,type=volume"
|
||||||
],
|
],
|
||||||
"postCreateCommand": "sudo chown usr_vscode node_modules", // 容器创建后执行 https://code.visualstudio.com/remote/advancedcontainers/improve-performance
|
"postCreateCommand": "sudo chown usr_vscode node_modules", // 容器创建后执行 https://code.visualstudio.com/remote/advancedcontainers/improve-performance
|
||||||
"postStartCommand": "pnpm -v", // 每次容器启动时执行
|
"postStartCommand": "pnpm -v; echo '${localWorkspaceFolderBasename}'", // 每次容器启动时执行
|
||||||
// "postAttachCommand": "pnpm config get store-dir", // 连接到容器后执行
|
// "postAttachCommand": "pnpm config get store-dir", // 连接到容器后执行
|
||||||
// "updateRemoteUserUID": true,
|
// "updateRemoteUserUID": true,
|
||||||
// "waitFor": "postStartCommand"
|
"waitFor": "postStartCommand",
|
||||||
"workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=delegated",
|
"workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind,consistency=delegated",
|
||||||
"workspaceFolder": "/workspace"
|
"workspaceFolder": "/workspace"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user