# yum install -y java-1.8.0-openjdk //安装jdk 1.8 # vi /etc/yum.repos.d/jenkins.repo //配置yum源 添加如下内容 [jenkins] name=Jenkins baseurl=http://pkg.jenkins.io/redhat gpgcheck=1 #rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key //检测密钥安装jenkins
# yum -y install epel-release # yum -y install daemonize # yum install -y jenkins //安装jenkins # yum install -y jenkins //安装jenkins # systemctl start jenkins //启动jenkins # netstat –ltnp //查看Jenkins是否启动(8080端口是否监听) # systemctl stop firewalld //关闭防火墙 #less /var/log/jenkins/jenkins.log //查看安装日志,查询admin密码 登录网站 http://ip:8080自定义jenkins
1. 安装插件
登陆后,会出现如下页面,这里涉及到jenkins的插件安装,建议选择“安装推荐的插件”,点击“安装推荐的插件”后,进入“新手入门”页面,等待全部插件安装成功即可
2. 创建第一个管理员用户
插件安装完成后,会出现“创建第一个管理员用户”页面,填写正确信息后,点击“保存并完成”,这样第一个管理员用户就创建完毕了
1. 安装插件
先进入“系统管理”,再进入“管理插件”,在“已安装”中检查是否有“Git plugin”和“Publish Over SSH”两个插件,如果没有则需要安装,到“可选插件”中搜索并安装
插件完成后,点击 “返回首页”回到服务器中重启 jenkins后,登录
#systemctl restart jenkins //重启jenkins
2. 配置Publish Over SSH
首先需要在服务器上/.ssh目录下生成一对密钥
首先需要在服务器上/.ssh目录下生成一对密钥,命令如下: # cd ~/.ssh # ssh-keygen -t rsa
检查是否生成成功
# ls -al
密钥生成成功后,登录Jenkins,点击“系统管理”然后点击“系统设置”,下拉找到“Publish Over SSH”将刚才生成的服务器的私钥填入 “Publish over SSH” 中的“key”
错误记录:提示 .ssh目录不存在
解决方案:创建~/.ssh目录,并把目录权限设置为700
# mkdir ~/.ssh #chmod 700 ~/.ssh
3. 增加SSH Server
“Publish over SSH”配置完成后,为了实现代码的成功发布,我们需要先查看并复制服务器的公钥
# cat .ssh/id_rsa.pub
然后将复制的服务器公钥,添加到需要添加“SSH Servers”的远程机器的.ssh/authorized_keys目录下,若要增加服务器的“SSH Servers”,则需要将服务器的公钥添加到服务器的.ssh/authorized_keys目录下
# vi .ssh/authorized_keys
在服务器上尝试登录远程机器
尝试登陆成功后,登录jenkins,进入“Manage Jenkins”,点击“Configure System”,下滑找到“SSH Servers”,填写所需要连接机器的各项设置,然后点击“Test Configuration”,显示“success”,即成功
错误记录:.ssh目录下无authorized_keys文件
解决方案:创建名为authorized_keys的文件,并且把它的用户权限设成600
# cd ~/.ssh # touch authorized_keys # chmod 600 authorized_keys # ls –al
4. 构建新的任务
点击新建ltem
输入任务名称,并选择构建软件项目的风格,应实验要求这里选择自由风格
填写“描述”
配置“源码管理”,选择管理源码的方式(这里选择git),将代码仓库的地址填入“Repositories URL”中,若代码仓库是私有仓库,还需要点击“添加”来添加凭证,其他保持默认即可
配置“构建触发器”“构建环境”,应实验要求此处保持默认即可
配置“构建”,此处用到了我们之前安装的 “publish over ssh” 插件,首先增加名为“Send files or exeute commands over SSH”的构建步骤
然后在“Name”下选择机器名称(此处SSH Server个数由第3步中添加的数量决定);“Source files”表示要发布那些代码,在其下填写“/”(表示全部);
“Remote directory”表示把代码发送到远程机器的位置,填写“/tmp/Jenkins_test”(此处可自定义);“Exec command”下填写想要执行的命令,此处自定义可以为空
点击“高级”,出现如下页面,其中“Pattern separator” 设置模式分隔符,“Exec timeout(ms)” 设置超时时间,此处保持默认即可
通常情况下我们需要添加多个机器来进行任务,点击左下角“Add Server”来添加多个机器
完成以上设置后,应用保存即可
5. 将代码发布到对方机器
首先进入任务,然后点击“立即构建”,查看“控制台输出”,最后登录各机器查看代码发布是否成功
# cd /tmp/12345 # ls -aljenkins邮件配置
首先进入“Manage Jenkins”,然后进入“Configure System”,填写“Jenkins location”, 设置系统管理员邮件地址,这里的邮件地址需要和后续要设置的发邮件地址一致
找到“邮件通知”,“SMTP服务器”中填写“smtp.163.com”,接着勾选“使用SMTP认证”,填写所使用邮箱的用户名及密码,“SMTP端口”使用25端口,接着勾选“通过发送测试邮件测试配置”,向其中填写用于发送测试邮件的邮箱地址后,点击“Test configuration”进行测试,发送成功后,保存
注意:
- “使用SMTP认证”下的密码需要我们去相应的邮箱获取。
获取步骤如下(以163邮箱为例):
登录163邮箱,点击上方“设置”,点击“POP3/SMTP/IMAP”,开启“IMAP/SMTP服务”和“POP3/SMTP服务”,找到“授权密码管理”,点击“新增授权密码”;接着按照提示步骤操作就可以了。 - “使用SMTP认证”下的用户名中所填邮箱地址,要与“系统管理员邮箱地址”相同,否则会发送错误
完成以上邮件配置后,我们还需要进入已经构建过的job里去配置接收邮件的地址。在已经构建过的项目test1中,点击“配置”
然后在“增加构建后操作步骤”中,选择“E-mail Notification”,最后在“Recipients”中填写邮箱地址并勾选“每次不稳定的构建都发送邮件通知”,保存
最后在“Recipients”中填写邮箱地址并勾选“每次不稳定的构建都发送邮件通知”,应用保存
1. 安装插件
进入“Manage Jenkins”,然后进入 “Manage Plugins”,找到并安装插件“Email Extension Plugin”,插件安装成功后,重启jenkins
2. 配置 Extended E-mail Notification
我们要使用 Extended E-mail Notification(email-ext) 去代替 “邮件通知”,所以我们需要先把“邮件通知”里设置的内容删掉
删除邮件通知的配置后,配置Extended E-mail Notification,“SMTP server”中填入“smtp.163.com”;“SMTP Port”中填入端口号为“25”;“SMTP Username”和“SMTP Password”中分别填入邮箱用户名与密码
然后下滑找到”Default Tiggers”,勾选”Always”,其他保持默认,保存
3. 配置对应任务
进入所创建的项目test1,下拉找到“构建后操作”,然后点击“增加构建后操作步骤”,选择“Editable Email Notification”,其中Project Recipient List为接收邮件的收件人,可以在默认内容后面增加额外的收件人邮箱,用英文逗号分隔
点击右下角的“Advanced settings”,找到“Triggers”(触发器,设置在什么情况下发送邮件),然后点击下方的“Add Trigger”,增加发邮件的条件,保存
4. 发送邮件测试
首先点击“立即构建”,然后查看“控制器输出”,如下图所示,可以看到发邮件的动作,最后收到邮件即为成功
1. 破解管理员密码
[root@jenkins_test3 ~]# cd /var/lib/jenkins/users/ [root@jenkins_test3 users]# ls -la 总用量 8 drwxr-xr-x. 4 jenkins jenkins 91 11月 5 07:28 . drwxr-xr-x. 18 jenkins jenkins 4096 11月 5 08:59 .. drwx------. 2 jenkins jenkins 24 11月 4 10:35 admin_1088696786195199031 drwx------. 2 jenkins jenkins 24 11月 5 07:28 noreply_2292328003593846535 -rw-r--r--. 1 jenkins jenkins 407 11月 5 07:28 users.xml [root@jenkins_test3 users]# cd admin_1088696786195199031 [root@jenkins_test3 admin_1088696786195199031]# vim config.xml 搜索定位到那一行,修改为 #jbcrypt:$2a$10$usctvlMlqJ8XswbJ0QCcRuZ6ItKL30r0mEXXi5cXCrnWITuyP2E5W [root@jenkins_test3 admin_1088696786195199031]# systemctl restart jenkins //重启jenkins 新密码为000000
2. 手动设置随机字符串
若不想使用上述的密码,我们也可以自己定义一个随机字符串,进入jenkins界面,点击右上角admin,点击设置,下拉找到“密码”,自己定义一个随机字符串,将自己定义的随机字符串保存下来,位置自由,若以后忘记了密码,可在 /var/lib/jenkins/users/admin 文件中,将字符串修改成自己定义的字符串,这样密码就修改成功了



