安装Jenkins使用Pipeline部署服务到Docker
Jenkins 介绍
Jenkins 是一款由 Java 开发的持续集成服务,他可以通过各种方式触发部署。
安装 Jenkins
先准备好一台 Linux 操作系统服务器,这次演示使用的是 Amazon Linux 2 AMI t3.medium
服务器。
安装环境
前面介绍到Jenkins是由 Java 开发的,所以需要先安装好运行环境需要的 JDK
[root@Jenkins ~]$ sudo yum update -y #Update yum package
[root@Jenkins ~]$ sudo yum install java-1.8.0 -y #安装JDK
[root@Jenkins ~]$ java -version #查看JDK版本
openjdk version "1.8.0_322"
OpenJDK Runtime Environment (build 1.8.0_322-b06)
OpenJDK 64-Bit Server VM (build 25.322-b06, mixed mode)
将 Jenkins Redhat Packages 添加到 yum 存储库
[root@Jenkins ~]$ sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
[root@Jenkins ~]$ sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
[root@Jenkins ~]$ sudo yum upgrade
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
jenkins | 2.9 kB 00:00:00
jenkins/primary_db | 40 kB 00:00:02
No packages marked for update
[root@Jenkins ~]$ sudo yum install jenkins -y
[root@Jenkins ~]$ sudo systemctl daemon-reload
Okey,这就安装完了 Jenkins Packages 了,过程中可能会遇到以下的 daemonize
问题,解决办法先安装 epel 再 update 下 yum 即可。
Error: Package: jenkins-2.303.3-1.1.noarch (jenkins)
Requires: daemonize
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
# 解决办法
sudo amazon-linux-extras install epel -y
sudo yum update -y
启动 Jenkins
[root@Jenkins ~]$ sudo service jenkins start
Starting jenkins (via systemctl): [ OK ]
配置 Jenkins
在服务器获取默认管理员admin账户密码
[root@Jenkins ~]$ sudo cat /var/lib/jenkins/secrets/initialAdminPassword e44042b458bd4986a3c470eb208f1a1d
然后打开浏览器访问服务器IP和Jenkins默认端口
8080
,这时候需要输入刚才获取的管理员密码解锁。如果没有其他特殊插件需要,就选择安装推荐的插件即可,完成后也可以在管理后台安装需要的插件。
插件安装大概需要3分钟,当然这取确于你的服务器运算情况。
安装完成后创建第一个管理员用户,当然也可以选择以admin账户继续
实例Jenkins URL可以填写Nginx后的域名,也可以后面再更新配置
如果你已跳过创建admin用户的步骤。要登录请使用用户名:’admin’ 及用于访问安装向导的管理员密码。
创建 Pipeline
Jenkins 流水线 (或简单的带有大写”P”的”Pipeline”) 是一套插件,它支持实现和集成 continuous delivery pipelines 到Jenkins。
Pipeline语法官方文档:https://www.jenkins.io/zh/doc/book/pipeline/jenkinsfile/
安装Jenkins使用Pipeline部署服务到Docker
https://whh.zone/2021/11/jenkins/