嫦嫦 發表於 2023-6-25 00:00:00

Ubuntu LTS服务器部署Jenkins详细介绍

<p>
        <strong>在Ubuntu 16.04 LTS服务器部署Jenkins</strong></p>
<p>
        本文讲述怎样在Ubuntu 16.04 LTS服务器上部署Jenkins环境。Jenkins是基于Java语言开发的持续集成工具,为软件开发提供了一个持续集成服务。Jenkins是一个基于服务器的系统,运行在Servlet容器(比如Apache Tomcat)中。Jenkins支持SCM工具,包括AccuRev、CVS、Subversion、Git、Mercurial、Perforce、Clearcase和RTC等,可以只需基于Apache Ant或Apache Maven的项目,以及任意Shell脚本或Windows批处理命令。</p>
<p>
        <strong>1、检查系统环境</strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_846156">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash comments"># cat /etc/os-release</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">NAME=</code><code class="bash string">"Ubuntu"</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">VERSION=</code><code class="bash string">"16.04.2 LTS (Xenial Xerus)"</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>2、确保系统保持最新</strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_887683">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">apt update</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">apt upgrade</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>3、安装Java环境</strong></p>
<p>
        通过PPA软件仓库安装OpenJDK 8。</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_873496">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">add-apt-repository ppa:openjdk-r</code><code class="bash plain">/ppa</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">apt update</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">apt </code><code class="bash functions">install</code> <code class="bash plain">openjdk-8-jdk</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        验证Java环境的安装:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_568031">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash comments"># java -version</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">openjdk version </code><code class="bash string">"1.8.0_121"</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">OpenJDK Runtime Environment (build 1.8.0_121-8u121-b13-0ubuntu1.16.04.2-b13)</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash plain">OpenJDK 64-Bit Server VM (build 25.121-b13, mixed mode)</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>4、安装python-software-properties</strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_349418">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">apt </code><code class="bash functions">install</code> <code class="bash plain">python-software-properties</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>5、安装Jenkins</strong></p>
<p>
        添加Jenkins源:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_978131">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">wget -q -O - http:</code><code class="bash plain">//pkg</code><code class="bash plain">.jenkins-ci.org</code><code class="bash plain">/debian-stable/jenkins-ci</code><code class="bash plain">.org.key | </code><code class="bash functions">sudo</code> <code class="bash plain">apt-key add -</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        OK</p>
<p>
        为Jenkins创建源列表:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_178644">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">sh -c </code><code class="bash string">'echo deb http://pkg.jenkins-ci.org/debian-stable binary/ &gt; /etc/apt/sources.list.d/jenkins.list'</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        再次更新,并开始Jenkins的安装过程:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_399645">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">apt update</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">apt </code><code class="bash functions">install</code> <code class="bash plain">jenkins</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        <strong>6、启动Jenkins服务</strong></p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_709746">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">systemctl start jenkins</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        Jenkins启动后,默认的日志会输出到/var/log/jenkins/jenkins.log文件中。启动后默认会创建一个管理员账号admin,以及为此账号产生一个密码,我的是:9**a947****f97a971d***4e**f</p>
<p>
        密码会写入到文件/var/lib/jenkins/secrets/initialAdminPassword中。查看日志文件,发现安装的Jenkins是最新的2.32.2 LTS版。<br>
        另外还可以对配置做一些调整。</p>
<p>
        <strong>7、为Jenkins安装并配置Apache HTTP Server</strong></p>
<p>
        Jenkins直接放公网不合适,通常会使用Nginx或Apache2作Jenkins的反向代理。故下面将为Jenkins安装并配置Apache HTTP Server。注意,如果不需要反向代理,可省略此步骤。</p>
<p>
        apt install apache2<br>
        在Apache中创建一个新的虚拟主机指令。比如,在虚拟主机上创建一个新的、名为“jenkins.conf”的Apache配置文件:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_672710">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                        <div class="line number2 index1 alt1">
                                                                2</div>
                                                        <div class="line number3 index2 alt2">
                                                                3</div>
                                                        <div class="line number4 index3 alt1">
                                                                4</div>
                                                        <div class="line number5 index4 alt2">
                                                                5</div>
                                                        <div class="line number6 index5 alt1">
                                                                6</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">a2enmod proxy</code>
</div>
                                                                <div class="line number2 index1 alt1">
                                                                        <code class="bash plain">a2enmod proxy_http</code>
</div>
                                                                <div class="line number3 index2 alt2">
                                                                        <code class="bash plain">a2ensite jenkins</code>
</div>
                                                                <div class="line number4 index3 alt1">
                                                                        <code class="bash functions">touch</code> <code class="bash plain">/etc/apache2/sites-available/jenkins</code><code class="bash plain">.conf</code>
</div>
                                                                <div class="line number5 index4 alt2">
                                                                        <code class="bash functions">ln</code> <code class="bash plain">-s </code><code class="bash plain">/etc/apache2/sites-available/jenkins</code><code class="bash plain">.conf </code><code class="bash plain">/etc/apache2/sites-enabled/jenkins</code><code class="bash plain">.conf</code>
</div>
                                                                <div class="line number6 index5 alt1">
                                                                        <code class="bash plain">nano </code><code class="bash plain">/etc/apache2/sites-available/jenkins</code><code class="bash plain">.conf</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        添加以下内容:</p>
<p>
        <strong>8、访问Jenkins服务</strong></p>
<p>
        Jenkins默认使用HTTP协议和主机的8080端口。浏览器访问http://ip:port/,可以看到如下界面。</p>
<p>
        <img style="max-width:100%!important;height:auto!important;"title="Ubuntu LTS服务器部署Jenkins详细介绍" alt="Ubuntu LTS服务器部署Jenkins详细介绍" src="https://zhuji.jb51.net/uploads/img/202305/8858afbf089452b0a2ab206aee4068aa.jpg"></p>
<p>
        输入初始密码,进入主界面。</p>
<p>
        <img style="max-width:100%!important;height:auto!important;"title="Ubuntu LTS服务器部署Jenkins详细介绍" alt="Ubuntu LTS服务器部署Jenkins详细介绍" src="https://zhuji.jb51.net/uploads/img/202305/cdbbfb038cb19679737c6875ce570891.jpg"></p>
<p>
         </p>
<p>
        然后就可以开始Jenkins之旅了。</p>
<p>
        <strong>9、修改Jenkins默认的端口</strong></p>
<p>
        Jenkins默认使用8080端口,要修改此端口,编辑/etc/default/jenkins配置文件,将以下内容:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_610092">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">HTTP_PORT=8080</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        改成想要的端口号,比如9080:</p>
<div class="jb51code">
        <div>
                <div class="syntaxhighlighterbash" id="highlighter_859871">
                        <div class="toolbar">
                                <span>?</span>
</div>
                        <table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
                                                        <div class="line number1 index0 alt2">
                                                                1</div>
                                                </td>
                                                <td class="code">
                                                        <div class="container">
                                                                <div class="line number1 index0 alt2">
                                                                        <code class="bash plain">HTTP_PORT=9080</code>
</div>
                                                        </div>
                                                </td>
                                        </tr></tbody></table>
</div>
        </div>
        <div class="codetool" id="codetool">
                <div class="code_n">
                        <textarea></textarea>
</div>
        </div>
</div>
<p>
        感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!</p>
頁: [1]
查看完整版本: Ubuntu LTS服务器部署Jenkins详细介绍