gitlab配置ci自动执行ssh构建命令

前言

gitlab提供了免费的ci功能,可以持续集成,通过简单的配置,我们能用ci调用ssh,在远程服务器执行命令。比如重启容器之类的简单任务

配置

找到项目的Settings -> CI/CD->Variables,

添加一个名为SSH_PRIVATE_KEY的变量,内容为你的ssh 私匙,确保能通过该私匙登陆你的ssh服务器

然后编辑你项目的.gitlab-ci.yml配置文件

job1: 
 image: netroby/docker-lftp
 before_script:
 - 'which ssh-agent || ( apt-get update -y && apt-get install openssh-client -y )' 
 - eval $(ssh-agent -s) 
 - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add -
 - mkdir -p ~/.ssh
 - chmod 700 ~/.ssh
 script:
 - ssh [email protected] uptime

在before_scripts这边,这些脚本的作用,是添加私匙, script段,就是你自己的的真正的需要远程执行的命令

示例中,连到服务器,并执行一个uptime命令,获取远程服务器的生存时间

你可以做任何你想做的事情

分类: Linux/Unix 标签: Gitlab CI ssh 发布于: 2020-12-26 17:09:56, 点击数: