docker部署jenkins,发布任务执行scp免密传输

第一步 进入docker容器

bash 复制代码
# 因为jenkins的任务都是以jenkins用户执行,必须以jenkins用户进入容器生成公私钥
docker exec -it -u jenkins jenkins /bin/bash

第二步 在容器内生成公私钥

bash 复制代码
# 容器中生成公私钥 直接三次回车不设置密码等信息
ssh-keygen -t rsa

第三步 查看生成的公钥

bash 复制代码
# 容器中到用户主目录/.ssh目录下查看生成的公钥
cat ~/.ssh id_rsa.pub

第四步 将公钥的内容追加到需要免密访问的服务器中

bash 复制代码
# 将公钥的内容追加到需要免密访问的服务器的 用户目录/.ssh/authorized_keys文件中
# 可以把jenkins容器中生成的 id_rsa.pub 公钥拷贝到需要免密访问的服务器上 执行
cat ./id_rsa.pub >> ~/.ssh/authorized_keys

第五步 测试结果

bash 复制代码
# 直接写入文件 或者自行vim添加也行,添加完后免密就玩设置好了

# 回到jenkins的容器内部,第一次需要先执行一下ssh连接 这样会生成know_host文件 否则scp会报 Host key verification failed.

ssh root@192.168.32.131

scp ./s.txt root@192.168.32.131/temp/s.txt

设置成功后就能在jenkins任务或者流水线中愉快的使用scp免密传输文件了

相关推荐
雪域迷影1 小时前
PostgreSQL Docker Error – 5432: 地址已被占用
数据库·docker·postgresql
福大大架构师每日一题2 小时前
22.1 k8s不同role级别的服务发现
容器·kubernetes·服务发现
莹雨潇潇2 小时前
Docker 快速入门(Ubuntu版)
java·前端·docker·容器
tangdou3690986553 小时前
1分钟搞懂K8S中的NodeSelector
云原生·容器·kubernetes
tangdou3690986556 小时前
Docker系列-5种方案超详细讲解docker数据存储持久化(volume,bind mounts,NFS等)
docker·容器
later_rql6 小时前
k8s-集群部署1
云原生·容器·kubernetes
漫无目的行走的月亮9 小时前
在Docker中运行微服务注册中心Eureka
docker
大G哥11 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
大道归简12 小时前
Docker 命令从入门到入门:从 Windows 到容器的完美类比
windows·docker·容器
zeruns80213 小时前
如何搭建自己的域名邮箱服务器?Poste.io邮箱服务器搭建教程,Linux+Docker搭建邮件服务器的教程
linux·运维·服务器·docker·网站