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

相关推荐
程序员老油条8 小时前
WSL2 + Docker Desktop:Windows 下的完美 Java 开发环境
java·windows·docker·wsl2
大侠锅锅10 小时前
第 4 篇:策略模式实践——用统一接口管理 Docker 容器、原生进程与 K3s Pod
docker·容器·边缘计算·策略模式·iot
小蓝波12 小时前
docker 的命令
java·docker·容器
2301_8011847514 小时前
docker 工作
java·docker·容器
至乐活着15 小时前
ELK日志系统从零搭建到实战:Nginx日志采集与可视化全攻略
nginx·elk·elasticsearch·docker·日志系统
想你依然心痛16 小时前
AtomCode 在 DevOps 场景中的实战:CI/CD 流水线脚本自动生成
运维·ci/cd·docker·devops·自动化部署·github actions
摇滚侠17 小时前
DockerHub 在国内有没有替代
docker
是大强18 小时前
Docker中文件修改的三种方法
运维·docker·容器
梦梦代码精1 天前
电商系统不是技术堆叠:LikeShop如何用分层Hold住复杂业务?
java·docker·代码规范