golang 自动化更新部署服务
- 准备
- 本地生成rsa秘钥,一直回车,不用输入密码
ssh-keygen -t rsa -C '' - 将公钥复制到远程服务器上
scp ~./ssh/id_rsa.pub user@192.169.1.1:/home/user - 在远程服务器上,将公钥添加到可信任秘钥
cat /home/user/id_rsa.pub >> ~/.ssh/authorized_keys - 完成后,本地ssh可免密登录远程服务器
- 本地编译
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o main -ldflags "-s -w" main.go - 上传
rsync main user@192.168.1.1:/home/ - 重启服务
ssh -t user@192.168.1.1 "supervisorctl restart main" - 完成
完整shell脚本
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o main -ldflags "-s -w" main.go
rsync main user@192.168.1.1:/home/
ssh -t user@192.168.1.1 "supervisorctl restart main"

浙公网安备 33010602011771号