• Gitlab+Jenkins自动化部署


    一、Gitlab搭建

    1、准备源

    cat >>/etc/yum.repos.d/gitlab-ce.repo<<EOF
    [gitlab-ce]
    name=Gitlab CE Repository
    baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/
    gpgcheck=0
    enabled=1
    EOF

    2、yum安装

    yum install gitlab-ce -y
    
    gitlab-ctl reconfigure  #第一次启动重载配置
    netstat -tunlp|grep 80  #查看80端口

    网页打开http://IP:80

    3、管理命令

    gitlab-ctl reconfigure        #第一次启动加载配置
    gitlab-ctl start                   # 启动
    gitlab-ctl stop                   #停止
    gitlab-ctl restart                #重启
    gitlab-ctl status                #查看状态
    
    gitlab-ctl tail                     #查看日志

    二、java环境安装

    1、把下载jdk包解压

    tar zxvf jdk-8u211-linux-x64.tar.gz
    
    mv jdk1.8.0_211 /usr/local/jdk1.8

    2、配置环境变量

    vim /etc/profile
    
    JAVA_HOME=/usr/local/jdk1.8/
    JAVA_BIN=/usr/local/jdk1.8/bin
    JRE_HOME=/usr/local/jdk1.8/jre
    PATH=$PATH:/usr/local/jdk1.8/bin:/usr/local/jdk1.8/jre/bin
    CLASSPATH=/usr/local/jdk1.8/jre/lib:/usr/local/jdk1.8/lib:/usr/local/jdk1.8/jre/lib/charsets.jar
    
    source /etc/profile

    3、查看java安装完成没

    java -version

    三、安装Jenkins

    1、安装下载完的rpm包

    yum install jenkins-2.190.1-1.1.noarch.rpm -y

    2、修改Jenkins的配置文件

    vim /etc/sysconfig/jenkins
    
    JENKINS_HOME="/data/jenkins"  #修改目录
    JENKINS_USER="root"        #修改执行的用户,用jenkins用户会出现权限问题
    JENKINS_PORT="8001"        #修改下端口号

    3、创建目录,启动

    mkdir /data/jenkins
    
    systemctl restart jenkins

    这时候报错了,找不到java启动文件

    Starting Jenkins bash: /usr/bin/java: No such file or directory

    解决办法:

    vim  /etc/init.d/jenkins
    
    candidates="
    /usr/local/jdk1.8/bin/java
    /etc/alternatives/java
    /usr/lib/jvm/java-1.8.0/bin/java
    /usr/lib/jvm/jre-1.8.0/bin/java
    /usr/lib/jvm/java-1.7.0/bin/java
    /usr/lib/jvm/jre-1.7.0/bin/java
    /usr/lib/jvm/java-11.0/bin/java
    /usr/lib/jvm/jre-11.0/bin/java
    /usr/lib/jvm/java-11-openjdk-amd64
    /usr/bin/java
    "

    4、重启下服务

    systemctl daemon-reload
    
    systemctl restart jenkins

    打开网页http://ip:8001

     出现Jenkins离线的情况,解决办法:

    cd /data/jenkins/updates/
    vim default.json
    {"connectionCheckUrl":"http://www.baidu.com/"改成百度
    cd /data/jenkins/
    vim hudson.model.UpdateCenter.xml
    <url>https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json</url>

    重启服务:

    systemctl restart jenkins

    安装推荐的软件就可以

    主页-系统管理-插件管理
    我们安装几个插件 ,直接搜索就可以
    ssh #执行远程脚本
    gitlab #集成gitlab用
    Build Authorization Token Root #构建授权token
    Gitlab hook #钩子插件

    四、配置jenkins和gitlab秘钥对

    配置秘钥对,让Jenkins和gitlab通信无需验证

    在服务器执行ssh-keygen

    系统管理-凭据-添加凭据-导入私钥

     把公钥放入gitlab中

    五、配置Jenkins的ssh服务器

    jenkins主页面-系统管理-系统设置

    六、创建一个gitlab和Jenkins项目

    1、gitlab

    创建就行了 点点点就玩了,而且gitlab有步骤,按照步骤用git命令搞git仓库出来

    2、jenkins

    取个名,项目名,最好可gitlab的项目名一致

    在源码管理点git

    这个RUL填写git项目的url就是这个 SSH的这个 点开你的项目就能看到了

     触发器,当gitlab有提交时可以触发

     

    ssh配置(可选)

    如果你不需要执行自定义脚本的话这布跳过

     保存!

    七、gitlab hook配置

    这第一行就写http://jenkins的地址/job/test_jenkins_gitlab/build?token=123456    #test_jenkins_gitlab 是jenkins的项目名,token是我刚才设置的

    点下边ok

    如果报错403 说明没有权限,其他的则是配置问题

    403报错解决办法:我们把jenkins配置,系统管理-全局安全配置

    照我的一致就没问题

    参考:https://www.cnblogs.com/wsy1030/p/9228488.html

  • 相关阅读:
    OpenCV2:总结篇 PS算法实现
    DirectX9:第四部分 顶点着色器
    DirectX9:基础篇 第一章 初始化Direct3D
    OpenCV2:高中篇 图像锐化技术-边缘检测算子
    他山之石:C++书籍推荐
    C89:论回调函数
    OpenCV2:幼儿园篇 第六章 图像转换
    四维空间引发-维度空间(0-10)来自我的教授的班长
    802.11全家
    提示窗UIAlertView与UIAlertController的用法(持续更新中)
  • 原文地址:https://www.cnblogs.com/guantou1992/p/11763303.html
Copyright © 2020-2023  润新知