如何在Ubuntu 18.04上使用Apache安装Jenkins Automation Server

Jenkins是一个在Java servlet容器中运行的自动化服务器,它支持许多SCM(源代码管理)软件系统,包括Git,......

如何在Ubuntu 18.04上使用Apache安装Jenkins Automation Server

Jenkins是Hudson项目中的一个自动化服务器。 Jenkins是一个运行在Java servlet容器中的基于服务器的应用程序,它支持许多SCM(源代码管理)软件系统,包括Git,SVN和Mercurial。 Jenkins提供了数百个插件来自动化您的项目。 Jenkins由Kohsuke Kawaguchi创建,2011年首次在MIT License下发布,它是一款免费软件。

在本教程中,我将向您展示如何在Ubuntu Server 18.04 LTS(仿生海狸)上安装最新稳定的Jenkins版本。 我们将在我们自己的域名上运行Jenkins,并且我们将安装并配置Jenkins以在Apache Web服务器反向代理下运行。

先决条件

  • Ubuntu 18.04
  • 根特权

我们将要做什么?

  1. 安装Java
  2. 安装Jenkins
  3. 安装并配置Apache2作为Jenkins的反向代理
  4. 配置UFW防火墙
  5. 配置Jenkins
  6. Jenkins安全
  7. 测试

第1步 - 安装Java

Jenkins是一个基于Java的应用程序,所以我们需要在服务器上安装Java OpenJDK。 在这一步中,我们将从我们将首先添加的PPA存储库安装Java 8。

安装software-properties-common软件包,然后添加java OpenJDK PPA存储库。

sudo apt install software-properties-common apt-transport-https -y
sudo add-apt-repository ppa:openjdk-r/ppa -y

安装Java

现在使用apt命令安装Java 8。

sudo apt install openjdk-8-jdk -y

安装完成后,检查系统上安装的Java版本。

java -version

并且您将获得Java OpenJDK 1.8现在安装在Ubuntu 18.04系统上。

Java OpenJDK 1.8现在安装在Ubuntu 18.04上

注意:

  • 如果您的系统上有多个Java版本,请使用以下命令更改默认的Java版本。

sudo update-alternatives --config java

第2步 - 安装Jenkins

Jenkins为安装包提供了一个Ubuntu存储库,我们将从这个存储库安装Jenkins。

使用下面的命令将Jenkins密钥和存储库添加到系统中。

wget -q -O - https://pkg.jenkins.io/debian-stable/jenkins.io.key | sudo apt-key add -
echo 'deb https://pkg.jenkins.io/debian-stable binary/' | tee -a /etc/apt/sources.list

现在更新存储库并安装Jenkins。

sudo apt update
sudo apt install jenkins -y

在Ubuntu上安装Jenkins

安装完成后,启动Jenkins服务并将其添加到引导时间。

systemctl start jenkins
systemctl enable jenkins

Jenkins现在在Ubuntu 18.04服务器上运行,并运行在默认端口'8080'上。 如下使用netstat检查它。

netstat -plntu

你会得到如下结果。

Jenkins服务器启用并启动

第3步 - 安装并配置Apache2作为Jenkins的反向代理

在本教程中,我们将在Apache Web服务器后面运行Jenkins,我们将配置Apache作为Jenkins的反向代理。

首先,我们将安装Apache并启用一些require模块,然后我们将为Jenkins创建带有域名jenkins.hakase-labs.io的虚拟主机文件。 请在此处使用您自己的域名,并将其替换为所有配置文件,无论它出现在哪里。

从Ubuntu存储库安装apache2 web服务器。

sudo apt install apache2 -y

安装完成后,启用proxy和proxy_http模块,以便我们可以将Apache配置为Jenkins的前端服务器/反向代理。

a2enmod proxy
a2enmod proxy_http

接下来,在sites-available目录中为Jenkins创建一个新的虚拟主机文件。

cd /etc/apache2/sites-available/
vim jenkins.conf

粘贴下面的虚拟主机配置。

<Virtualhost *:80>
    ServerName        jenkins.hakase-labs.io
    ProxyRequests     Off
    ProxyPreserveHost On
    AllowEncodedSlashes NoDecode
 
    <Proxy http://localhost:8080/*>
      Order deny,allow
      Allow from all
    </Proxy>
 
    ProxyPass         /  http://localhost:8080/ nocanon
    ProxyPassReverse  /  http://localhost:8080/
    ProxyPassReverse  /  http://jenkins.hakase-labs.io/
</Virtualhost>

保存并退出,然后使用a2ensite命令激活Jenkins虚拟主机。

a2ensite jenkins

重新启动Apache和Jenkins服务。

systemctl restart apache2
systemctl restart jenkins

apache2安装和配置作为Jenkins的反向代理已经完成。

Apache作为jenkins的反向代理

第4步 - 配置UFW防火墙

在Ubuntu服务器上启用UFW防火墙之前,我们需要添加基本服务端口,例如SSH,HTTP和HTTPS。

将SSH,HTTP和HTTPS服务添加到ufw防火墙。

ufw allow ssh
ufw allow http
ufw allow https

现在启动并启用ufw防火墙。

ufw enable

输入'y'并按下Enter键。

配置UFW防火墙

UFW防火墙现在已启用,并且已添加HTTP端口。

第5步 - 配置Jenkins

Jenkins正在运行域名' http://jenkins.hakase-labs.io '。 打开您的网络浏览器并输入网址。

您会看到屏幕上要求您输入初始管理员密码。 Jenkins已经生成了一个密码,所以我们只需要显示并将结果复制到密码框。

用cat命令显示初始管理员密码Jenkins。

cat /var/lib/jenkins/secrets/initialAdminPassword

配置jenkins

将结果粘贴到屏幕上,然后点击“继续”。

解锁Jenkins

现在我们应该在Jenkins中安装一些插件,为以后的使用奠定良好的基础。 选择'安装建议的插件',点击它。

自定义Jenkins

Jenkins插件正在进行安装。

Jenkins开始了

插件安装完成后,我们需要创建一个新的管理密码。 输入你的管理员用户名,密码,电子邮件等,然后点击“保存并继续”。

创建管理员用户

对于实例配置,输入Jenkins域名'http://jenkins.hakase-labs.io',然后单击'保存并完成'按钮。

实例配置

现在点击'开始使用Jenkins'按钮。

Jenkins准备好了

您将被重定向到Jenkins管理仪表板。

欢迎来到Jenkins

Jenkins的安装和配置已成功完成

第6步 - Jenkins安全

在Jenkins管理仪表板中,我们需要为Jenkins配置标准安全设置,点击'管理Jenkins',然后点击'配置全局安全性'。

管理Jenkins

Jenkins在“访问控制”部分提供了多种授权方法。 我们将使用“基于矩阵的安全性”,因此我们可以控制所有用户权限。

在'User / Group'框添加'hakase'用户并点击添加。

通过检查所有选项给'hakase'用户提供所有权限,然后单击'保存'按钮。

Jenkins设置

您将被重定向到仪表板,如果有登录选项,只需输入您的管理员用户名和密码。

以admin身份登录

第7步 - 测试

在本节中,我们想为Jenkins服务器创建一个简单的工作。 我们将为测试Jenkins创建一个简单的工作,并用top命令找出服务器负载。

从Jenkins管理仪表板中,点击“创建新作业”。

在Jenkins创建工作

输入作业名称。 我们将在这里使用“检查系统”,选择“Freestyle Project”并点击“确定”。

Jenkins的工作

转到“构建”选项卡。 在“添加构建步骤”中,选择“执行外壳”选项。

在框中输入下面的命令。

top -b -n 1 | head -n 5

点击“保存”。

建立Jenkins的工作

现在你在“项目检查系统”的工作页面上。 点击'Build Now'来执行作业'检查系统'。

项目检查系统

作业执行完毕后,您会看到“构建历史记录”,点击第一个作业查看结果。

这是Jenkins执行的工作的结果。

Jenkins的工作运行结果

使用Apache2作为Ubuntu 18.04上的反向代理的Jenkins自动化工具安装和配置已成功完成。

参考