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 [email protected]

scp ./s.txt [email protected]/temp/s.txt

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

相关推荐
tonngw7 小时前
【Mac 从 0 到 1 保姆级配置教程 16】- Docker 快速安装配置、常用命令以及实际项目演示
macos·docker·容器·开源·github·docker desktop·orbstack
debug 小菜鸟9 小时前
浏览器访问 AWS ECS 上部署的 Docker 容器(监听 80 端口)
docker·云计算·aws
SpikeKing9 小时前
Server - 使用 Docker 配置 PyTorch 研发环境
pytorch·docker·llm
斯普信云原生组11 小时前
Docker构建自定义的镜像
java·spring cloud·docker
2201_7611990411 小时前
k8s4部署
云原生·容器·kubernetes
小柏ぁ11 小时前
calico/node is not ready: BIRD is not ready: BGP not established with xxx
运维·docker·kubernetes
三劫散仙12 小时前
kubernetes jenkins pipeline优化拉取大仓库性能指定分支+深度
容器·kubernetes·jenkins
西京刀客13 小时前
k8s热更新-subPath 不支持热更新
云原生·容器·kubernetes·configmap·subpath
weixin_4349362813 小时前
k8S 命令
linux·容器·kubernetes
nuczzz15 小时前
GPU虚拟化
docker·kubernetes·k8s·gpu·nvidia