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免密传输文件了

相关推荐
runfarther几秒前
CentOS7.5下安装Docker和Docker-Compose,并支持host-gateway特性
docker·docker compose
oMcLin6 分钟前
如何在 RHEL 8.4 上实现高效的 Docker 容器网络配置,优化跨容器的通信速度与可靠性?
docker·容器
人工智能训练1 小时前
UE5中如何解决角色网格体“掉下去”的问题
运维·服务器·windows·容器·ue5
DigitalOcean11 小时前
DigitalOcean容器注册表推出多注册表支持功能
容器
江湖有缘13 小时前
Jump个人仪表盘Docker化部署教程:从0到 搭建专属导航页
运维·docker·容器
Lam㊣13 小时前
Centos 7 系统docker:更换镜像源
linux·docker·centos
挖土机_00814 小时前
Kubernetes 1.35 原地扩容(In-Place Pod Resize)完整解析:机制、差异与实战示例
docker·kubernetes
左直拳15 小时前
将c++程序部署到docker
开发语言·c++·docker
五仁火烧15 小时前
Vue3 项目的默认端口行为
服务器·vue.js·nginx·容器·vue
f***281416 小时前
Springboot中使用Elasticsearch(部署+使用+讲解 最完整)
spring boot·elasticsearch·jenkins