专业的编程技术博客社区

网站首页 > 博客文章 正文

云原生:Jenkins构建服务器的安装(jenkins发布到远程服务器)

baijin 2024-08-18 13:29:55 博客文章 7 ℃ 0 评论

前文《云原生:DevOps理念下的CI/CD究竟是指什么?》介绍了持续集成和持续交付的基本概念,Jenkins是CI/CD流程的核心。

基于Jenkins的CI流程:开发push代码到gitlab,触发Jenkins自动pull代码,通过maven编译、打包,然后执行shell脚本构建docker镜像,并将镜像push到容器镜像仓库。

基于Jenkins的CD流程:当需要部署服务时,Jenkins服务器上再执行SSH命令登录到部署服务器,从镜像仓库中拉取镜像文件,启动容器,完成整个部署流程。

本文重点介绍Jenkins服务器的安装过程。

准备工作

安装git,用于从Gitlab上拉取代码。

yum install -y git

安装sshpass,一个免交互的SSH登录工具,用于登录Slave节点。

yum install -y sshpass

安装wget,下载工具,用来下载axel。

yum install -y wget

安装多线程下载工具axel,下载jenkins用到。

wget http://download-ib01.fedoraproject.org/pub/epel/7/x86_64/Packages/a/axel-2.4-9.el7.x86_64.rpm
rpm -ivh axel-2.4-9.el7.x86_64.rpm

安装rsync,文件同步工具。

yum install rsync

创建项目测试时会用到的日志目录

mkdir -p /data/logs/mall

配置Docker镜像仓库地址

在需要上传或下载镜像的服务器上,机器所在的docker环境都需要配置私有镜像仓库地址,构建服务器要上传镜像、应用部署服务器要下载镜像。

# 修改daemon.json

vim /etc/docker/daemon.json

#在原有配置基础上,加上如下内容:

{
    "registry-mirrors": ["https://xxx.mirror.aliyuncs.com"], #阿里云镜像加速
    "insecure-registries":["192.168.0.123"] #私有镜像仓库
}

添加完重启docker

systemctl daemon-reload
systemctl restart docker

下载安装Jenkins

下载jenkins安装包。

axel -n 20 http://mirrors.jenkins-ci.org/war/2.327/jenkins.war

启动jenkins。

java -jar jenkins.war --httpPort=8888

如果是自有机房,关闭防火墙。如果是云服务器,则配置端口放行。

systemctl status firewalld
systemctl stop firewalld

修改jenkins配置,用于插件站点更新,加速联网。

vim ~/.jenkins/hudson.model.UpdateCenter.xml

将XML内的url的值替换为:

http://mirror.xmission.com/jenkins/updates/update-center.json

访问Jenkins

浏览器访问jenkins,提示输入密码,根据页面提示查看密码的方式获取密码并登录,一般用cat命令查看。

cat /root/.jenkins/secrets/initialAdminPassword
cat /data/jenkins_data/secrets/initialAdminPassword

密码输入正确后提示插件的选择,可以直接忽略跳过即可看到首页

页面左上角jenkins->people->admin->configure进行修改管理员密码。修改完后,跳转到登录页,输入用户名\密码即可正常登录。

Jenkins开机自启动

首先实现用脚本来启动Jenkins,然后再把启动脚本添加到/etc/rc.d/rc.local 中,这个文件是系统启动加载文件。

(1)切换到root 用户下。

su root

(2)创建jenkins新的工作目录。

mkdir /data/jenkins_data

(3)通过脚本启动。

cd /root
vim jenkins.sh

(4)编辑脚本内容。

#!/bin/bash
export JAVA_HOME=/usr/local/java/jdk1.8.0_261/
export JENKINS_SERVER_PATH=/root
export JENKINS_HOME=/data/jenkins_data
cd ${JENKINS_SERVER_PATH}
nohup java -jar jenkins.war --httpPort=8888 >jenkins.log 2>&1 &

(5)添加脚本执行权限。

chmod +x jenkins.sh

退出root用户。

exit

(6)设置开机执行:

vim /etc/rc.d/rc.local

在文件最后添加如下启动命令:

su root -c "/root/jenkins.sh"

检查 shell脚本是否可以正常工作。关闭jenkins, 执行:

su root -c "/root/jenkins.sh"

看jenkins是否能启动 。

(7)如没有问题,添加启动加载文件的执行权限。

chmod +x /etc/rc.d/rc.local

(8)重启服务器,注意这是高危操作, 执行前要确保没有严重后果。

reboot

重启完再次访问jenkins,发现启动成功

这样我们就完成了Jenkins构建服务器的安装,接下来可以配置CI/CD的流程了。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表