Jenkins打包问题

配置Jenkins打包

报错

bash 复制代码
Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)

这个错误表示在连接到目标服务器时出现了权限拒绝的问题。可能的原因和解决方法如下:

  1. -SSH 密钥问题: 确保 Jenkins 服务器上运行 Jenkins 服务的用户(通常是 jenkins 用户)的 SSH 密钥已经添加到目标服务器的 ~/.ssh/authorized_keys 文件中。
  • 将 Jenkins 用户的 SSH 公钥添加到目标服务器的 ~/.ssh/authorized_keys 文件。你可以使用

    ssh-copy-id 命令来简化此过程:

bash 复制代码
ssh-copy-id -i /path/to/jenkins/ssh/key user@192.168.2.122

/path/to/jenkins/ssh/key 目录

在 Linux 系统上,SSH 密钥通常存储在用户的家目录下的 ~/.ssh/ 文件夹中。所以,如果 Jenkins 服务是以 jenkins 用户身份运行,你可以使用以下路径:

bash 复制代码
/home/jenkins/.ssh/id_rsa

如果你知道 Jenkins 服务运行的用户,可以将路径中的 jenkins 替换为实际的用户名。确保选择的密钥是已经添加到目标服务器 ~/.ssh/authorized_keys 文件中的密钥。

  1. Jenkins 用户配置: 确保 Jenkins 服务是以正确的用户身份运行的。在 Jenkins 服务配置中,你可以指定

    Jenkins 运行的用户。

  2. SSH 密钥文件路径: 在 Jenkins 中,确保在 "Send files or execute commands over SSH"

    步骤中配置了正确的 SSH 密钥文件路径。你可以在 Jenkins 的构建配置中查看 SSH 配置。

  3. SSH 密码登录: 如果无法使用密钥登录,考虑在 Jenkins

    配置中启用密码登录,或者在构建脚本中提供密码。这通常不是最安全的方法,但可以作为调试的一种方式。

    在 Jenkins 配置中的 "Send files or execute commands over SSH" 步骤中,选择 "Use password authentication, or use a different key" 并提供密码。

  4. 目标服务器 SSH 配置: 确保目标服务器的 SSH 服务器配置允许密码登录或使用提供的密钥。检查目标服务器的

    /etc/ssh/sshd_config 文件。

在尝试这些解决方法之后,再次运行 Jenkins 作业,应该能够成功连接到目标服务器。

相关推荐
叱咤少帅(少帅)16 小时前
新版本jenkins的共享库的实现
运维·jenkins
2601_9622972516 小时前
Python、Pytest、Allure、Selenium和Jenkins实现自动化测试集成实例
python·selenium·jenkins·pytest·allure
大模型丫丫16 小时前
工业级 RAG 为什么需要 Elasticsearch?
elasticsearch·django·jenkins
X1A0RAN2 天前
Jenkins 流水线跨阶段的数据共享:让变量“动态更新“成为可能
java·servlet·jenkins
Ningcode_cloud3 天前
什么是CICD? GitLab + Jenkins 持续集成实战部署手册
运维·ci/cd·云原生·容器·gitlab·jenkins
tianyuanwo3 天前
Jenkins 邮件插件选型指南:从命名原理到场景实践
jenkins·plugin·email
姚永强3 天前
安装Jenkins
运维·jenkins
成茂峰3 天前
实战:内外网隔离环境下基于 Jenkins + PowerShell 的自动化 CI 构建与邮件通知方案
ci/cd·自动化·jenkins
tianyuanwo3 天前
Jenkins Pipeline 沙箱与非沙箱:CPS、序列化与白名单的深度解读(含 `take()` 与 `subList()` 实战对比)
pipeline·jenkins·groovy·take·sublist
Sayai6 天前
Elasticsearch 快照备份到 NAS(NFS)实战:SLM 自动化 + 365 天保留策略
elasticsearch·自动化·jenkins