1.环境。vmvare centos7

 

2. 启动jenkins 容器

docker run -p 8080:8080 -p 50000:5000 --name jenkins \
-u root \
-v /mydata/jenkins_home:/var/jenkins_home \
-d jenkins/jenkins:lts

3.进入docker 容器

docker exec -it jenkins /bin/bash

进入后,执行下面命令创建 ssh 密钥:

# 创建目录
mkdir ~/.ssh && cd ~/.ssh
# 生成密钥
ssh-keygen -t rsa
# 一直回车即可
# 生成私钥id_rsa,公钥id_rsa.pub
# 退出镜像
exit

 下面开始在【宿主机】上继续操作,进入挂载的 /var/jenkins_home/.ssh 目录,执行下面的操作:

# 在宿主机创建 .ssh 目录
mkdir ~/.ssh
# 将 jenkins 镜像的公钥追加到 authorized_keys 后面
cat id_rsa.pub >> ~/.ssh/authorized_keys

 

如果~/.ssh/authorized_keys文件还不存在,则需要手工创建。

确保~/.ssh文件权限为700,~/.ssh/authorized_keys文件权限为600,否则会导致SSH失败。

设置文件权限:

chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
  •  

配置好后,在Jenkins服务器上用jenkins账号验证是否可以SSH成功:

  • 4.  在系统管理->系统配置中添加全局ssh的配置,这样Jenkins使用ssh就可以执行远程的linux脚本了:

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐