Jenkins

Jenkins主要是实现多个平台一起更新代码,只要开发人员提交了代码他就会更新。方便开发人员的查漏。

个人理解持续集成:为解决程序代码提交质量低,提交内容导致原有系统的BUG,按时或按需自动编译版本,进行自动化测试。

百度对持续集成的定义:持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。

具体可以参考:http://blog.51cto.com/linuxg/1790033

http://blog.51cto.com/linuxg/1791141

Jenkins是一个免费的开源连续集成服务器。 它是用JAVA编写的。 它可以用于自动化与软件开发相关的各种任务,如构建测试和部署。 它支持许多版本控制系统,如git,SVN,mercurial等。

在本教程中,我们将在CentOS 7服务器上安装Jenkins Automation Server。 我们还将设置Nginx作为Jenkins的反向代理。

环境:centos7.0


在安装任何软件包之前,建议您使用以下命令更新软件包和存储库。
yum -y update

更新系统后,继续安装JAVA。安装JAVA 8
Jenkins支持OpenJDK和Oracle JAVA,在本教程中,我们将安装最新版本的OpenJDK到服务器中。 运行以下命令在您的服务器上安装OpenJDK。
yum install java-1.8.0-openjdk

java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-b12)
OpenJDK 64-Bit Server VM (build 25.131-b12, mixed mode)

您还需要检查是否设置了JAVA_HOME环境变量。 运行以下命令相同
echo $JAVA_HOME

如果获得空或空白输出,则需要手动设置JAVA_HOME变量,编辑器编辑.bash_profile文件
vi  ~/.bash_profile

现在在文件的末尾添加以下行。
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/
export JRE_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/jre

使用以下命令来源文件。
source ~/.bash_profile

echo $ JAVA_HOME命令来检查环境变量是否设置。
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.131-3.b12.el7_3.x86_64/



安装Jenkins


可以通过添加存储库并导入GPG密钥直接安装Jenkins。 通过运行以下命令将Jenkins存储库添加到系统中。

wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo

通过运行以下命令导入GPG密钥。
rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key

导入成功后,您可以通过运行以下命令来安装Jenkins。
yum -y install jenkins

Jenkins现在安装在您的服务器上。 现在安装了所有必需的软件包。 安装程序还创建了一个新用户jenkins来运行该进程。 您可以继续进行启动服务器。



开始Jenkins

systemctl start jenkins
systemctl status jenkins


们可以使用Apache或Nginx Web服务器为应用程序创建一个反向代理,而不是访问端口8080上的应用程序。
 在本教程中,我们将使用nginx作为应用程序的反向代理。 现在,nginx将在nginx代理服务器后面运行
 
vi /usr/local/nginx/conf/vhost/jenkins.conf

upstream jenkins{
    server 127.0.0.1:8080;
}

server{
    listen      80;
    server_name ci.yourdomain.com;

    access_log  /var/log/nginx/jenkins.access.log;
    error_log   /var/log/nginx/jenkins.error.log;

    proxy_buffers 16 64k;
    proxy_buffer_size 128k;

    location / {
        proxy_pass  http://jenkins;
        proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
        proxy_redirect off;

        proxy_set_header    Host            $host;
        proxy_set_header    X-Real-IP       $remote_addr;
        proxy_set_header    X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header    X-Forwarded-Proto https;
    }

}



systemctl start nginx
使Nginx自动启动
systemctl enable nginx



配置防火墙和SELinux
您的服务器上运行防火墙,则需要通过防火墙允许端口8080和标准HTTP端口。 运行以下命令添加防火墙规则以允许端口8080和80。

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --zone=public --add-service=http --permanent

运行以下命令重新加载防火墙区域:
firewall-cmd --reload


通过运行以下命令配置SELinux进行nginx代理配置。
setsebool httpd_can_network_connect 1 -P


http://ci.yourdomain.com或者http://ip:8080


cat /var/lib/jenkins/secrets/initialAdminPassword

在下一个界面上,它将安装插件

为Jenkins管理员信息板创建管理员用户
用户:admin
密码:admin
地址:qq邮箱

猜你喜欢

转载自www.cnblogs.com/fengzhongzhuzu/p/8919671.html