美文网首页
关于git/gitlab及Gitlab-Runner的学习和部署

关于git/gitlab及Gitlab-Runner的学习和部署

作者: 茉茉杨 | 来源:发表于2019-07-10 16:36 被阅读0次

    关于git/gitlab及Gitlab-Runner的学习和部署总结如:

    ·  Git 是分布式版本控制系统,代码管理工具:备份文件,记录历史,回到过去,多端共享;add--commit提交本地,push到远程服务器;改乱了工作区某个文件的内容或commit了不合适的修改时,checkout可直接丢弃工作区的修改或是用版本库里的版本替换工作区的版本;工作区和本地提交的的都没有了,pull还可以直接将远程主机的最新内容拉下来;好处之一是在本地工作完全不需要考虑远程库的存在,也就是有没有联网都可以正常工作,而SVN在没有联网的时候是拒绝干活的;当有网络的时候,再把本地提交推送一下就完成了同步。

    ·  Gitlab是第三方基于git实现的在线代码仓库系统,并在此基础上搭建起来的web服务:

    1. 通过 Web 界面快速创建项目,登录后页头+号直接。

    2. 能够浏览源代码,管理缺陷和注释;

    3. 管理团队对仓库的访问,并对提交代码的审核和对问题的跟踪;

    4. 易于浏览提交过的版本;

    ·  Gitlab-Runner 是 gitlab 提供的持续集成工具。每一次push到gitlab的时候,都会触发一次在仓库根目录创建的名为.gitlab-ci.yml 的脚本执行;通过gitlab-runner运行pipeline;脚本的内容包括:测试,编译,部署等一系列自定义的内容。

    以下内容是git+Gitlab+Gitlab-Runner的部署

    安装git和gitlab过程如下:

    首先在本地安装Ubuntu系统(在 VMware Workstation Pro虚拟机)

    一、Git的安装

    1. 检查是否安装git

           $ git  

    2. 安装并配置必要的依赖项 

           $ apt-get install libcurl4-gnutls-dev libexpat1-dev gettext

           $ apt-get install libz-dev libssl-dev

    3. 安装git

           $ apt install git

    4. 查看版本号,即安装成功

           $ git --version

    5. 配置个人的用户名称和电子邮件地址

           $ git config --global user.name "xxx"

           $ git config --global user.email  xxx@qq.com

    6. 更新所有文件

           $ apt-get update

    二、安装 gitlab (建议使用官方推荐的集成安装包的方式安装,通过源码安装会有很多坑踩不完。)

    1. 安装并配置必要的依赖项

        $ apt-get install -y curl openssh-server ca-certificates

    2. 软件的安装 ,下载包:

    (https://packages.gitlab.com/app/gitlab/gitlab-ee/search 将包放入WinSCP里的 Downloads目录  )

         $ cd Downloads

         $ dpkg –i gitlab-ee_11.11.3-ee.0_amd64.deb

    3. 安装GitLab包。 将https://gitlab.example.com更改为自己服务哭地址; 安装将自动配置并启动该URL的GitLab。

           $ EXTERNAL_URL="https://192.168.16.232" apt-get install gitlab-ee

    4. 关闭防火墙

           $ ufw disable

    5. 启用gitlab组件运行

           $ gitlab-ctl reconfigure

    三、配置Gitlab-Runner环境在root权限下

    (一)准备工作

     下载安装包(https://docs.gitlab.com/runner/install/linux-manually.html

            # Linux x86-64

            wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64

            # 赋予可执行权限

            chmod +x /usr/local/bin/gitlab-runner

            # 创建 GitLab CI 用户

            useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash

            # 安装

            gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner

            # 运行

            gitlab-runner start

    (二)在Linux下注册Runner

            1.首先需要准备URL和Token(可以在 GitLab 创建项目的settings->CI/CD->Runner settings 中找到/下文有附图)

            root@ubuntu:/# gitlab-runner register

            Runtime platform                                    arch=amd64 os=linux pid=95878 revision=ac2a293c version=11.11.2

            Running in system-mode.                                                                        

            Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):

            http://192.168.16.232/

            Please enter the gitlab-ci token for this runner:

            sUjBeJpnfKxR4TE-aSSK

            Please enter the gitlab-ci description for this runner:

            [ubuntu]: my-demo

            Please enter the gitlab-ci tags for this runner (comma separated):

            my-demo

            Registering runner... succeeded                     runner=sUjBeJpn

            Please enter the executor: ssh, virtualbox, kubernetes, docker, docker-ssh, docker+machine, docker-ssh+machine, parallels, shell:

            shell

            Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!

            Gitlab-Runner安装并注册完成!

    (三)在项目中运行 Gitlab-Runner

            1. 新建群组--在群组里新建项目

            2.邀请成员

            3. 注册Runner(在Linux下注册Runner首先需要准备的URL和Token所在位置/如图)

            4.在项目根目录中添加 .gitlab-ci.yml 文件了 (add--commit--push);当我们添加了 .gitlab-ci.yml 文件后,每次提交代码或者合并 Merge request都会自动运行构建任务了。

    相关文章

      网友评论

          本文标题:关于git/gitlab及Gitlab-Runner的学习和部署

          本文链接:https://www.haomeiwen.com/subject/nzlhkctx.html