feat(devcontainer): 调整挂载卷命名并优化容器命令执行流程
This commit is contained in:
@@ -89,27 +89,41 @@
|
|||||||
},
|
},
|
||||||
"remoteUser": "usr_vscode",
|
"remoteUser": "usr_vscode",
|
||||||
"mounts": [
|
"mounts": [
|
||||||
"source=${localWorkspaceFolderBasename}-bashhistory,target=/commandhistory,type=volume",
|
"source=${localWorkspaceFolderBasename}--bashhistory,target=/commandhistory,type=volume",
|
||||||
"source=${localWorkspaceFolderBasename}-lingma,target=/home/usr_vscode/.lingma,type=volume",
|
"source=${localWorkspaceFolderBasename}--lingma,target=/home/usr_vscode/.lingma,type=volume",
|
||||||
"source=${localWorkspaceFolderBasename}-gemini,target=/home/usr_vscode/.gemini,type=volume",
|
"source=${localWorkspaceFolderBasename}--gemini,target=/home/usr_vscode/.gemini,type=volume",
|
||||||
"source=${localWorkspaceFolderBasename}-claude-code-router,target=/home/usr_vscode/.claude-code-router,type=volume",
|
"source=${localWorkspaceFolderBasename}--claude-code-router,target=/home/usr_vscode/.claude-code-router,type=volume",
|
||||||
"source=${localWorkspaceFolderBasename}-claude-code-config,target=/home/usr_vscode/.claude,type=volume",
|
"source=${localWorkspaceFolderBasename}--claude-code-config,target=/home/usr_vscode/.claude,type=volume",
|
||||||
"source=${localWorkspaceFolderBasename}-pnpm-store,target=/home/usr_vscode/.pnpm-store,type=volume",
|
"source=${localWorkspaceFolderBasename}--pnpm-store,target=/home/usr_vscode/.pnpm-store,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; pnpm install",
|
/**
|
||||||
|
* 执行顺序总结
|
||||||
|
1. initializeCommand (本地主机)
|
||||||
|
2. 容器创建
|
||||||
|
3. onCreateCommand (容器内,仅首次)
|
||||||
|
4. updateContentCommand (容器内)
|
||||||
|
5. postCreateCommand (容器内)
|
||||||
|
6. 容器启动
|
||||||
|
7. postStartCommand (容器内,每次启动)
|
||||||
|
8. VS Code 附加到容器
|
||||||
|
9. postAttachCommand (容器内,每次附加)
|
||||||
|
*/
|
||||||
|
"initializeCommand": /* 本地执行(容器创建前) */ "echo '准备创建容器...'",
|
||||||
|
"onCreateCommand": /* 容器内执行(仅首次创建) */ {
|
||||||
"fix-claude-code-router": "sudo chown -R usr_vscode /home/usr_vscode/.claude-code-router",
|
"fix-claude-code-router": "sudo chown -R usr_vscode /home/usr_vscode/.claude-code-router",
|
||||||
"fix-lingma": "sudo chown -R usr_vscode /home/usr_vscode/.lingma",
|
"fix-lingma": "sudo chown -R usr_vscode /home/usr_vscode/.lingma",
|
||||||
"fix-claude": "sudo chown -R usr_vscode /home/usr_vscode/.claude",
|
"fix-claude": "sudo chown -R usr_vscode /home/usr_vscode/.claude",
|
||||||
"fix-gemini": "sudo chown -R usr_vscode /home/usr_vscode/.gemini"
|
"fix-gemini": "sudo chown -R usr_vscode /home/usr_vscode/.gemini",
|
||||||
}, // 容器创建后执行 https://code.visualstudio.com/remote/advancedcontainers/improve-performance
|
"fix-node_modules": "sudo chown usr_vscode node_modules;"
|
||||||
"postStartCommand": {
|
},
|
||||||
"node version": "node -v"
|
"updateContentCommand": /* 容器内执行(创建后或内容更新) */ "echo '更新内容...'",
|
||||||
}, // 每次容器启动时执行
|
"postCreateCommand": /* 容器内执行(创建完成后) */ "pnpm install",
|
||||||
"postAttachCommand": "echo 容器已连接: ${containerWorkspaceFolder}", // 连接到容器后执行
|
"postStartCommand": /* 容器内执行(每次启动) */ "echo '容器已启动!'",
|
||||||
|
"postAttachCommand": /* 容器内执行(每次附加) */ "echo '开发环境已就绪!${containerWorkspaceFolder}'",
|
||||||
// "updateRemoteUserUID": true,
|
// "updateRemoteUserUID": true,
|
||||||
"waitFor": "postStartCommand",
|
"waitFor": "updateContentCommand",
|
||||||
"workspaceMount": "source=${localWorkspaceFolder},target=/wrkspc,type=bind,consistency=delegated",
|
"workspaceMount": "source=${localWorkspaceFolder},target=/wrkspc,type=bind,consistency=delegated",
|
||||||
"workspaceFolder": "/wrkspc"
|
"workspaceFolder": "/wrkspc"
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user