首先要下载对应的 code-server 安装包,下载地址:

https://github.com/coder/code-server/releases/

以 arm Linux 版本为例,下载命令为:

wget https://github.com/coder/code-server/releases/download/v4.105.1/code-server-4.105.1-linux-arm64.tar.gz

下载后解压

tar -zxvf code-server-4.105.1-linux-arm64.tar.gz
mv code-server-4.105.1-linux-arm64 /opt/csv/
cd /opt/csv

解压后就可以正常使用了,使用时可以使用如下命令启动 vscode server

export PASSWORD=[登陆密码] #设置vscode server web的登陆密码
/opt/csv/bin/code-server --port 8888 --host 0.0.0.0 --auth password 

命令说明
设置环境变量 PASSWORD 是设置默认的登陆密码
–port 访问端口
–host url 的访问 IP 地址
–auth 加密方式,password 表示使用密码登陆

每次使用时都要输入上面那段命令稍显麻烦,可以考虑创建一个 shell 脚本每次直接执行即可启动,

touch vsc

shell 脚本内容如下:

#! /bin/bash
export PASSWORD=[登陆密码]
/opt/csv/bin/code-server --port 8888 --host 0.0.0.0 --auth password 

再次优化可以考虑封装成一个服务,由 systemd 进行统一管理,需要实现一个 vsc. Services 文件,内容如下:

[Unit]
# 服务描述(自定义,比如脚本功能)
Description=vscode web service
# 服务启动依赖(无特殊依赖可保留默认)
After=network.target syslog.target
# 若脚本依赖其他服务(如数据库),可添加:After=mysql.service redis.service

[Service]
# 运行用户(重要!改为实际执行脚本的用户,如 ubuntu、root 或自定义用户)
User=[用户名]
# 运行组(与用户对应,如 ubuntu、root)
Group=[用户组]
# 工作目录(脚本所在的绝对路径,必须准确!比如脚本在 /home/ubuntu/tools 下)
WorkingDirectory=/opt/csv
# 脚本绝对路径(必须写全,比如 /home/ubuntu/tools/csv,避免环境变量问题)
ExecStart=/opt/csv/vsc
# 停止脚本的命令(根据脚本特性修改,可选)
# 若脚本支持 SIGTERM 优雅退出,可省略;否则自定义停止命令(如 kill 进程)
ExecStop=/bin/kill -TERM $MAINPID
# 重启脚本的命令(可选,默认继承 ExecStart)
ExecReload=/bin/kill -HUP $MAINPID

# 进程类型(默认 simple,若脚本是后台运行的守护进程,改为 forking)
Type=simple
# 仅当脚本前台运行时用(大多数 shell 脚本推荐 simple)

# 自动重启配置(核心!避免脚本崩溃后停止)
Restart=on-failure  # 仅在进程异常退出(退出码非0)时重启
RestartSec=3        # 重启间隔(秒,避免频繁重启)

# 日志配置(输出到 systemd 日志,方便排查问题)
StandardOutput=journal+console  # 日志同时输出到 journald 和控制台
StandardError=journal+console   # 错误日志同样处理
SyslogIdentifier=csv-service    # 日志标识(查询日志时用)

# 权限与资源限制(可选,根据需求添加)
NoNewPrivileges=true  # 禁止脚本获取新权限(安全加固)
LimitNOFILE=65535     # 最大文件描述符(避免文件打开过多报错)

[Install]
# 开机启动的目标(多用户模式,默认即可)
WantedBy=multi-user.target

将 vsc. Service 文件放置在/usr/lib/systemd/system 目录下,并且在/usr/systemd/system/目录下创建一个软连接,命令如下:

ln -s /usr/lib/systemd/system/vsc.service /usr/systemd/system/vsc.service 

之后就可以通过 systemctl 命令进行管理了

systemctl start vsc.  # 启动
systemctl status vsc.  # 查看状态
systemctl stop vsc.   # 停止

然后就可以在浏览器中输入: http://x.x.x.x:8888 进行访问了。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐