一、go环境安装

wget https://golang.google.cn/dl/go1.21.6.linux-amd64.tar.gz
tar -xf go1.21.6.linux-amd64.tar.gz  -C /usr/local/
rm -rf go1.21.6.linux-amd64.tar.gz

mkdir -p /data/go

cat <<EOF>>/etc/profile
export GOROOT=/usr/local/go
export GOPATH=/data/go
export GOBIN=\$GOROOT/bin
export PATH=\$PATH:\$GOBIN
export GO111MODULE=on
export GOPROXY=https://goproxy.cn,direct
EOF
echo "source /etc/profile" >>~/.bashrc
source  ~/.bashrc

二、vscode安装

1、下载vscode

wget https://ghproxy.homeboyc.cn/https://github.com/coder/code-server/releases/download/v4.20.1/code-server-4.20.1-linux-amd64.tar.gz
tar -xf code-server-4.20.1-linux-amd64.tar.gz -C /usr/local/bin/

2、vscode使用systemctl管理

cat /etc/systemd/system/code-server.service
    [Unit]
    Description=Code Server IDE
    After=network.target

    [Service]
    Type=simple
    User=root
    Environment=PASSWORD=duanshuaixing-password
    ExecStart=/usr/local/code-server-4.20.1-linux-amd64/bin/code-server --port 8081 --host 0.0.0.0 --auth password
    Restart=always

    [Install]
    WantedBy=multi-user.target
systemctl daemon-reload && systemctl restart code-server && systemctl enable code-server

2、安装插件
1>Chinese (Simplified) Language Pack for Visual Studio Code
2>vscode-go-syntax
3>GO

三、配置访问路径

实现效果:
http://vscode.chandz.com/?folder=/data 跳转为
http://vscode.chandz.com/home/?folder=/data

nginx配置文件

server {
    listen 80;
    server_name vscode.chandz.com;

    # Redirect root to /home/login
    location = / {
        return 301 /home/login;
    }

    # Proxy /home/login to code-server login
    location /home/login {
        proxy_pass http://192.168.0.160:8081/login;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    # Rewrite all other requests to include /home
    location /home/ {
        rewrite ^/home/(.*) /$1 break;
        proxy_pass http://192.168.0.160:8081;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;

        # WebSocket support
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
    }
}
docker run -itd   --name nginx --restart=always  -p 80:80   -v $(pwd)/nginx.conf:/etc/nginx/conf.d/default.conf   nginx
Logo

一站式 AI 云服务平台

更多推荐