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

关于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都会自动运行构建任务了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,265评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,078评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,852评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,408评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,445评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,772评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,921评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,688评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,130评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,467评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,617评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,276评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,882评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,740评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,967评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,315评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,486评论 2 348