linux - 如何手动安装 VS Code Server(无需 VS Code 再次尝试安装)?
问题描述
我尝试使用“远程容器:在容器中重新打开”在容器中运行我的 Visual Studio 代码。为此,我有以下文件夹结构:
.devcontainer/
devcontainer.env
devcontainer.json
Dockerfile
certs.pem
我可以毫无问题地构建 docker 映像,但我仍然无法创建容器,因为下载和安装 VS Code Server 时出现问题:
Support for Alpine Linux is in preview.
[14250 ms] Start: Run in container: test -d /home/<name>/.vscode-server/bin/26076a4de974ead31f97692a0d32f90d735645c0
[14252 ms]
[14252 ms]
[14252 ms] Exit code 1
[14252 ms] Installing VS Code Server for commit 26076a4de974ead31f97692a0d32f90d735645c0
[14252 ms] Start: Run in container: mkdir -p /home/<name>/.vscode-server/bin/26076a4de974ead31f97692a0d32f90d735645c0_1590499133646
[14254 ms]
[14254 ms]
[14254 ms] Start: Downloading VS Code Server
[15315 ms] Failed to download VS Code Server (https://update.code.visualstudio.com/commit:26076a4de974ead31f97692a0d32f90d735645c0/server-linux-alpine/stable): HTTP 407 - authenticationrequired
因此,我尝试按照 jia2 和崖柏迪克的建议手动执行此操作:https ://github.com/microsoft/vscode-remote-release/issues/78 。
所以我在我的 Dockerfile 中添加了以下几行:
RUN mkdir -p /home/<name>/.vscode-server/bin/26076a4de974ead31f97692a0d32f90d735645c0_1590494378070 &&\
cd /home/<name>/.vscode-server/bin/26076a4de974ead31f97692a0d32f90d735645c0_1590494378070 && \
curl --proxy "http://<user>:<pw>@<company_domain>:<port>" --cacert /home/certs.pem -L https://update.code.visualstudio.com/commit:26076a4de974ead31f97692a0d32f90d735645c0/server-linux-alpine/stable -o vscode-server-linux-alpine.tar.gz &&\
tar -xzf vscode-server-linux-alpine.tar.gz
现在的问题是 VS Code 仍然尝试创建上面的文件夹来安装 VS Code Server 并抱怨(当然!)它已经存在:
[14142 ms] Installing VS Code Server for commit 26076a4de974ead31f97692a0d32f90d735645c0
[14142 ms] Start: Run in container: mkdir -p /home/<name>/.vscode-server/bin/26076a4de974ead31f97692a0d32f90d735645c0_1590496132128
[14144 ms]
[14144 ms] mkdir: can't create directory '/home/<name>/.vscode-server/bin/26076a4de974ead31f97692a0d32f90d735645c0_1590496132128': Permission denied
[14144 ms] Exit code 1
[14146 ms] Command in container failed: mkdir -p /home/<name>/.vscode-server/bin/26076a4de974ead31f97692a0d32f90d735645c0_1590496132128
同样根据SSH with VSCode without internet这应该可以工作,但显然它没有。我不确定是否可以通过在容器中永久安装 VS Code 的服务器来解决它,因为我还不太熟悉 docker-compose。我将不胜感激任何尝试的建议或指出我犯的错误。
解决方案
推荐阅读
- reporting-services - Reporting Services 部署错误:编译表达式时出现意外错误。本机编译器返回值:'255'
- javascript - 动态填充表格每一行的下拉菜单
- c# - 进程启动一个新的 CMD 实例
- javascript - 如何使用 React 访问嵌套的 JSON 对象数据?
- python - 使用 map() 函数将元组作为值附加到字典
- python - 您如何将列表中的元素特定到另一个列表而不覆盖它们?(IndexError:列表索引超出范围)
- python-3.x - 希望打印出这个问题的阶乘答案。即 5*4*3*2*1= 120
- class - LSTM 类,出现错误:TypeError: __init__() got an unexpected keyword argument 'input_shape'
- android - 有没有办法在颤动中向 DropdownButton 添加标签?
- javascript - 类型上不存在属性但属性存在