我正在尝试为远程开发工作区配置 SSH 身份验证,如文档中所述:
{
"dockerfile": "Dockerfile",
"runArgs": [
// ...
"-v",
"${env:HOME}${env:USERPROFILE}/.ssh:/root/.ssh-localhost:ro"
],
"postCreateCommand": "echo \"copying ssh keys...\" && mkdir -p ~/.ssh && cp -r ~/.ssh-localhost/* ~/.ssh && chmod 700 ~/.ssh && chmod 600 ~/.ssh/*",
extensions: [
// ...
]
}
请注意,我echo
在该行的开头添加了一条语句,只是为了确保我知道它是否运行。除此之外,它与文档相同。
但是,似乎postCreateCommand
永远不会运行。如果我查看 Dev Containers 终端输出,我既看不到预期的docker exec
命令,也看不到我的语句的copying ssh keys...
输出,并且从容器内部显示了文件夹,但看不到.echo
ls -a /root
.ssh-localhost
.ssh
我在日志中也没有看到错误消息。我已经尝试触发“远程开发:重建容器”以及在重新加载窗口之前删除容器和图像,但无论如何都会得到相同的结果。
我在这里缺少什么配置?