Apt上的Jenkins用户 - 获取安装安装

Dav*_*ong 55 ubuntu continuous-integration apt-get jenkins

我刚刚通过debian安装步骤(使用apt-get install)在我的Ubuntu服务器上安装了Jenkins.我希望我的构建从GitHub上的私有git存储库中提取.有了这个,我需要使用SSH访问来访问我的存储库.

我的大多数搜索结果刚刚说是以Jenkins用户身份登录并为我的GitHub帐户生成SSH密钥,但是通过debian软件包管理器安装,我没有Jenkins用户的密码.

那么如何为我的Jenkins服务器生成SSH密钥呢?

nei*_*llb 94

我预计你会不时想以jenkins的身份登录来完成其他任务,所以我会解决更普遍的问题.最后会包含对您的问题的严格答复.

在不知情的情况下更改jenkins的密码

从任何具有sudo权限的帐户,您可以将jenkins的密码重置为您选择的密码:

sudo passwd jenkins
Run Code Online (Sandbox Code Playgroud)

您可能会首先询问您自己的密码,以便使用sudo.然后,系统将提示您输入为jenkins设置的新密码,最后确认该新密码.

如果具有sudo权限的用户名为joe,则以下是会话的外观:

joe $ sudo passwd jenkins
[sudo] password for joe:     **you enter joe's passwd**
Enter new UNIX password:     ** you enter new jenkins passwd**
Retype new UNIX password:    ** you enter new jenkins passwd**
passwd: password updated successfully
Run Code Online (Sandbox Code Playgroud)

替代方案:以jenkins身份登录,无需密码

或者,再次使用来自合适的其他帐户的sudo,您可以登录jenkins而不会被要求输入密码:

sudo su - jenkins
Run Code Online (Sandbox Code Playgroud)

抛开:避免密码提示混淆

在发布之前sudo passwd jenkins,我们可能首先要分别使用sudo进行身份验证,以避免混淆"我现在要求输入密码的问题?".

sudo -v
sudo passwd jenkins
Run Code Online (Sandbox Code Playgroud)

在sudo成功验证后,有一个窗口(例如15分钟),我们不会再提示我们进行身份验证.(请注意sudo -k,如果要进行实验,可以立即使此会话无效(终止).)

答应严格的答案

sudo -u jenkins ssh-keygen
Run Code Online (Sandbox Code Playgroud)

然后使用cat查看要传递给github的公钥的内容(但路径只是一个例子):

  sudo cat ~jenkins/.ssh/id_rsa.pub
Run Code Online (Sandbox Code Playgroud)

公钥文件的确切位置和名称取决于您在上面的ssh-keygen提示中输入的内容.我使用了jenkins'家庭目录的快捷方式~jenkins.

相关链接

  • 感谢非常广泛的解释.我发现你实际上必须以Jenkins用户身份登录,因此有必要添加密码.在Jenkins可以自己克隆一个回购之前,你必须以jenkins的身份登录,至少要做一个ssh`ssh git @ github.com`来添加指纹.还要确保使用`git config --global user.email'jenkins @ email.com'`和`git config --global user.name'jenkins'`配置git客户端. (10认同)