1 Star 2 Fork 2

LeeWei / XYJenkinsPipeline

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
BSD-3-Clause

XYJenkinsPipeline

介绍

jenkins pipeline脚本 1、自动合并分支, 拉取master -> 打tag -> 合并所有dev分支

流程示意图

说明

配置

Jenkins

更换jenkins为root用户

  1. jenkins的目录设置权限
    chown -R root:root jenkins目录(eg: var/jenkins_home)
  2. 编辑jenkins文件(docker的Jenkins镜像没找到这个文件)
    vi /etc/default/jenkins
    #找到下面两个,改为root
    JENKINS_USER=root
    JENKINS_GROUP=root
  3. 重启Jenkins
    service jenkins restart

关闭jenkins跨站请求伪造保护

jenkins2.2以上版本关闭跨站请求伪造保护(高版本jenkins不能在设置界面禁用跨站请求伪造保护)。

  1. 禁用跨站请求伪造保护,修改配置文件(docker的Jenkins镜像没找到这个文件)
    vi /etc/sysconfig/jenkins
    
    JENKINS_JAVA_OPTIONS="-Djava.awt.headless=true -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration.DISABLE_CSRF_PROTECTION=true"
  2. 重启Jenkins
    service jenkins restart

生成秘钥

  1. ssh秘钥命令,记住第一步的文件名和安装目录(默认是 /root/.ssh)
    #按照提示全部回车,不用输入内容
    ssh-keygen
  2. jenkins安装目录(eg: /var/jenkins_home)新建.ssh目录
    mkdir -p .ssh
  3. /root/.ssh中的公钥和私钥 复制到jenkins目录的.ssh目录下面
    cp /root/.ssh/* /var/jenkins_home/

gitlab

安装环境

说明

  1. 本机docker环境安装jenkins和gitlab
  2. 腾讯云服务器安装jenkins、gitlab.com上传项目

本机docker环境

说明

  • 示例prtainer访问地址:localhost:9000,初始账号/密码为 admin/adminadmin
  • 示例jenkins访问地址:localhost:8082 初始账号/密码为 admin/admin
  • 示例gitlab访问地址(host中做了映射):http://my-gitlab.com:86 初始账号/密码为 root/888888
  • prtainer中管理jenkins和gitlab更加方便
  • docker命令运行失败,检查‘\’后面是否有空格

docker命令备注

-d //启动在后台
--name //容器名字
-p //端口映射(8081:宿主主机端口,8080:容器内部端口)
-v //数据卷挂载映射(/data/jenkins_home:宿主主机目录,另外一个即是容器目录)
jenkins/jenkins:lts //Jenkins镜像(最新版)
  1. 安装docker desktop

  2. portainer docker可视化管理

    • 安装portainer
      docker pull portainer/portainer-ce
    • 本机运行
      docker run -d -p 9000:9000 \
        -v /var/run/docker.sock:/var/run/docker.sock \
        --restart=always \
        --name prtainer portainer/portainer
    • 远程运行
      docker run -d -p 9000:9000 \
        --restart=always \
        --name prtainer portainer/portainer
  3. gitlab安装镜像

    • 安装gitlab
      docker pull gitlab/gitlab-ce
    • 需要提前在本机创建gitlab/config、gitlab/logs、gitlab/data三个目录
      docker run --detach \
        --hostname my-gitlab.com \
        --publish 4433:443 --publish 86:80 --publish 2222:22 \
        --name gitlab \
        -restart always \
        --volume /Users/lee/gitlab/config:/etc/gitlab \
        --volume /Users/lee/gitlab/logs:/var/log/gitlab \
        --volume /Users/lee/gitlab/data:/var/opt/gitlab \
        gitlab/gitlab-ce:latest
  4. jenkins安装镜像

    • 安装jenkins
      docker pull pjenkins/jenkins:lts
    • 本机运行 需要提前在本机创建docker-jenkins目录
       docker run -d \
         --name jenkins \
         -p 8082:8080 \
         -v /Users/lee/docker-jenkins:/var/jenkins_home \
         jenkins/jenkins:lts

腾讯云+gitlab.com环境

腾讯云服务器安装jenkins,gitlab.com建立项目

腾讯云服务

参考文章

  1. CentOS下部署Java7/Java8
  2. CentOS 7 下Jenkins安装部署教程

openjdk安装

yum install -y java-1.8.0-openjdk

Jenkins安装

  • 添加yum源
    sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo
  • 导入密钥
    sudo rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key
  • 安装
    sudo yum upgrade
    sudo yum install -y jenkins
  • 开放端口 Jenkins站点的默认监听端口是8080
    sudo firewall-cmd --add-port=8080/tcp --permanent
    sudo firewall-cmd --reload  
  • 修改jenkins启动脚本
    vi /etc/init.d/jenkins
    
    #修改candidates增加java可选路径:/usr/java/jdk1.8.0_181/bin/java
    candidates="
    /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/bin/java
    /usr/java/jdk1.8.0_181/bin/java
  • 重载服务(由于前面修改了Jenkins启动脚本)
    sudo systemctl daemon-reload
  • 启动Jenkins服务
    sudo systemctl start jenkins
  • 将Jenkins服务设置为开机启动
    #由于Jenkins不是Native Service,所以需要用chkconfig命令而不是systemctl命令
    sudo /sbin/chkconfig jenkins on
  • 首次安装的默认密码
    cat /var/lib/jenkins/secrets/initialAdminPassword

gitlab

使用gitlab管理项目

BSD 3-Clause License Copyright (c) 2021, 李伟 All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

简介

jenkins pipeline脚本 1、自动合并分支, 拉取master -> 打tag -> 合并所有dev分支 展开 收起
Groovy
BSD-3-Clause
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Groovy
1
https://gitee.com/hanlinbear_943428664/xyjenkins-pipeline.git
git@gitee.com:hanlinbear_943428664/xyjenkins-pipeline.git
hanlinbear_943428664
xyjenkins-pipeline
XYJenkinsPipeline
master

搜索帮助