zoukankan      html  css  js  c++  java
  • centos8.1部署gitlab+jenkins

    1. 系统环境

    server: CentOS Linux release 8.1.1911 (Core)
    	ip: 192.168.0.113
    project: CentOS Linux release 8.1.1911 (Core)
    	ip: 192.168.0.115
    
    关闭Selinux
    vim /etc/selinux/config
    	SELINUX=disabled
    关闭firewalld防火墙
    [root@jekins01 ~]# systemctl stop firewalld.service 
    [root@jekins01 ~]# systemctl disable firewalld.service 
    Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    

    2. GitLab安装部署

    下载gitlab源:
    curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
    使用dnf安装gitlab
    [root@jekins01 ~]# dnf -y install gitlab-ce
    wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/8/gitlab-ce-12.8.6-ce.0.el8.x86_64.rpm/download.rpm
    

    更改url访问地址

    vim /etc/gitlab/gitlab.rb
    external_url 'http://192.168.0.113'
    gitlab-ctl reconfigure	# 更改了配置文件后需要重新生成配置
    

    访问gitlabhttp://192.168.0.113

    默认账号是root

    3. GitLab备份

    对gitlab进行备份将会创建一个包含所有库和附件的归档文件。对备份的恢复只能恢复到与备份时的gitlab相同的
    版本。将gitlab迁移到另一台服务器上的最佳方法就是通过备份和还原。
    gitlab提供了一个简单的命令行来备份整个gitlab,并且能灵活的满足需求。
    备份文件将保存在配置文件中定义的backup_path中,文件名为TIMESTAMP_gitlab_backup.tar,TIMESTAMP为备
    份时的时间戳。TIMESTAMP的格式为:EPOCH_YYYY_MM_DD_Gitlab‐version。
    如果自定义备份目录需要赋予git权限
    配置文件中加入 egrep -v "^#|^$" /etc/gitlab/gitlab.rb
    external_url 'http://192.168.150.28'
    unicorn['worker_timeout'] = 60
    unicorn['worker_processes'] = 2
    unicorn['worker_memory_limit_min'] = "200 * 1 << 20"
    unicorn['worker_memory_limit_max'] = "300 * 1 << 20"
    sidekiq['concurrency'] = 15
    postgresql['shared_buffers'] = "256MB"
    prometheus['enable'] = false
    gitlab_rails['backup_path'] = '/data/backup/gitlab'
    gitlab_rails['backup_keep_time'] = 604800 备份保留的时间(以秒为单位,这个是七天默认值),
    mkdir /data/backup/gitlab
    chown ‐R git.git /data/backup/gitlab
    完成后执行gitlab‐ctl reconfigure
    

    4. Jenkins

    1.安装JDK运行环境和jenkins服务
    上传JDK和jenkins rpm安装包,使用rpm ‐ivh进行安装,安装完JDK运维java测试是否安装成功
    rpm ‐ivh jdk‐8u181‐linux‐x64.rpm
    rpm ‐ivh jenkins-2.176.1-1.1.noarch.rpm
    
    2. 配置jenkins
    启动用户修改为root
    [root@jekins01 ~]# vim /etc/sysconfig/jenkins
    JENKINS_USER="root"
    [root@jekins01 ~]# systemctl start jenkins
    [root@jekins01 ~]# systemctl enable jenkins
    访问页面进行配置
    http://192.168.0.113:8080
    3. 插件安装(跳过安装插件,直接上传插件到目录)和修改登录密码
    	1.自动安装可选插件
    	2.手动下载插件上传安装
    	3.插件放入插件目录
    4.jenkins主要的目录
    /usr/lib/jenkins/:jenkins安装目录,WAR包会放在这里
    /etc/sysconfig/jenkins:jenkins配置文件,“端口”,“JENKINS_HOME”等都可以在这里配置
    /var/lib/jenkins/:默认的JENKINS_HOME
    /var/log/jenkins/jenkins.log:Jenkins日志文件
    

    5. 结合GitLab创建一个Jenkins项目

    1. 访问gitlab,创建用户访问 token
    	进入项目---> 点击右上角的用户头像--->settings--->Access Tokens
    	把生成的Token暂时找个地方保存起来, 等会创建Jenkins任务的时候会用到
    2. 创建Jenkins普通项目
    	注意: 需要提前安装gitlab plugin, Gitlab API Plugin插件
    	点击新建任务--->构建一个自由风格的项目--->源码管理--->Git--->Credentials--->添加--->需要填写name, ID(这里的id是在gitlab创建的token)
    2.1 构建触发器
    	勾选 Build when a change is pushed to GitLab. GitLab webhook URL: ---> 高级---》 Filter branches by name:master ---> Generate(保存生成的token)
    2.2 构建环境
    	点击构建 --->添加构建步骤---》执行shell: echo "test ok" ---> 保存
    2.3 设置gitlab的推送触发
    	进入gitlab项目---> Settings --->Integrations---> url: 刚刚Jenkins那里的GitLab webhook URL:后面的地址, Secret Token:刚刚Generate那里生成的token, 勾选Push events
    2.4 测试Jenkins项目是否可以拉取gitlab上的项目
    	进入Jenkins项目--->立即构建
    	访问Jenkins的存储路径:
    	[root@jekins01 ~]# ls /var/lib/jenkins/workspace/test01
    	biubiubiu.txt  test.txt
    3. 创建Jenkins Java项目
    	注意:
    		需要提前安装Maven Info Plugin Maven Release Plug-in Plug-in 插件
    		需要安装maven	
    		
    3.1 安装Maven
    	tar xf apache‐maven‐3.3.9‐bin.tar.gz
        mv apache‐maven‐3.3.9 /usr/local/
        ln ‐s /usr/local/apache‐maven‐3.3.9/ /usr/local/maven
        /usr/local/maven/bin/mvn ‐v
        编辑/etc/profile文件,在末尾添加
        export PATH=/usr/local/maven/bin:$PATH
        mvn ‐v 查看版本号
    
    3.2 在Jenkins页面指定Maven包路径
    	首页---> 系统管理--->全局工具配置--->Maven 安装
    										--->新增Maven ---> Name: maven
    														  MAVEN_HOME: /usr/local/maven/
        
    3.3 点击新建任务---> 构建一个maven项目
    	参数化构建过程---> 添加参数:
    						Git Parameter: 
    							Name:git_version 
    							Description:请输入需要发布的版本
    						选项参数:
    							名称:deploy_env
    							选项: 
    								deploy
    								rollback
        源码管理:
        	Git:
    			Repositories URL:git@192.168.0.113:root/java01.git
    			Credentials: 跟之前添加账号的方式一样
    			指定分支: ${git_version}
    	Build:
    		Root POM: pom.xml	
    		Goals and options: clean package  # 先清除后打包
    		
    	Post Steps
    		执行shell:
    			sh /mnt/maven.sh  # maven.sh的脚本放在了最后面
    				
    
    微醺生活,醉美人生
  • 相关阅读:
    [翻译] AAPullToRefresh
    [翻译] DKTagCloudView
    【转】Data URL和图片,及Data URI的利弊
    【转】C#获取当前日期时间(转)
    【转】Android的setTag
    【转】Android之Adapter用法总结
    【转】jpg png区别和使用
    【转】Android UI开发第三十一篇——Android的Holo Theme
    【转】android中的Style与Theme
    【转】关于Eclipse创建Android项目时,会多出一个appcompat_v7的问题
  • 原文地址:https://www.cnblogs.com/sonyy/p/13156021.html
Copyright © 2011-2022 走看看