1. 手动步骤
1、菜单 > 帮助 > 关于,获取 VSCode 的 commit id
2、从 https://update.code.visualstudio.com/commit:${commit_id}/server-linux-x64/stable
下载 vscode server
3、将 vscode-server-linux-x64.tar.gz
上传到 server
4、将下载的 vscode-server-linux-x64.tar.gz
解压到 ~/.vscode-server/bin/${commit_id}
目录下,不带 vscode-server-linux-x64
目录。
5、在 ~/.vscode-server/bin/${commit_id}
目录下创建一个文件,文件名为 0
2. 脚本自动化
可以使用脚本,一键自动化上述步骤。
download_vscode_server.sh:
#!/bin/bash
# 版本:0.1.0
# 描述:针对服务器无法连接外网的环境,本机更新vscode后,在本地运行此脚本下载vscode服务端并上传部署到服务器上
set -x
if [ $# -lt 1 ]; then
echo "usage: ./download_vscode_server.sh <commit_id>"
exit 1
fi
commit_id=$1
wget --no-check-certificate "https://update.code.visualstudio.com/commit:${commit_id}/server-linux-x64/stable" -O ~/vscode-server-linux-x64.tar.gz
# 修改user_ip_list配置要上传的服务器列表
user_ip_list=("zhangdongyu@10.xx.xx.xx" "zhangdongyu@10.xx.xx.xx")
for ((i = 0; i < ${#user_ip_list[@]}; i++)); do
scp ~/vscode-server-linux-x64.tar.gz ${user_ip_list[i]}:~
ssh ${user_ip_list[i]} "rm -rf ~/.vscode-server/bin/*"
ssh ${user_ip_list[i]} "mkdir -p ~/.vscode-server/bin/${commit_id}"
ssh ${user_ip_list[i]} "tar xf ~/vscode-server-linux-x64.tar.gz -C ~/.vscode-server/bin/${commit_id} --strip 1"
ssh ${user_ip_list[i]} "touch ~/.vscode-server/bin/${commit_id}/0"
ssh ${user_ip_list[i]} "rm -rf ~/vscode-server-linux-x64.tar.gz"
done
rm -rf ~/vscode-server-linux-x64.tar.gz