Ubuntu Docker 安装和配置 GitLab CI 持续集成

简介:

相关文章:

目的:在 Ubuntu 服务器上,使用 Docker 安装和配置 GitLab Runner,搭建 GitLab CI 持续集成环境。

服务器版本 Ubuntu 16.04 LTS。

安装命令:

$ docker run -d --name gitlab-runner --restart always \
  -v /srv/gitlab-runner/config:/etc/gitlab-runner \
  -v /var/run/docker.sock:/var/run/docker.sock \
  gitlab/gitlab-runner:latest

参数说明:

  • --d: 设置容器后台运行
  • --name:容器名称
  • --restart always:每次启动容器就重启 gitlab-runner
  • --v: 共享目录挂载(如果是 Mac OSX 系统,需要把/srv改为/Users/Shared

安装好之后,可以使用docker ps查看容器是否在运行,接着我们进入容器:

$ docker exec -it gitlab-runner gitlab-runner register

gitlab-runner register是进入gitlab-runner容器的执行命令,用于注册和初始化gitlab-runner

下面是我的示例配置:

435188-20170825154548714-1517492021.png

我们也可以编辑vim /srv/gitlab-runner/config/config.toml,手动修改配置:

concurrent = 1
check_interval = 0

[[runners]]
  name = "my-runner"
  url = "http://40.125.206.47"
  token = "b6ac044b57cbb22073b95dd384e517"
  executor = "docker"
  [runners.docker]
    tls_verify = false
    image = "microsoft/dotnet:latest"
    privileged = false
    disable_cache = false
    volumes = ["/cache"]
    shm_size = 0
  [runners.cache]

gitlab-ci token需要用root账号登陆 GitLab,才能看到(/admin/runners):

435188-20170825154537261-1921032154.png

配置好之后,我们就可以在 GitLab 中看到 GitLab Runner 了,示例:

435188-20170825154522668-552957527.png

然后点击修改,添加我们需要应用 GitLab Runner 的 Project 项目,示例(点击Enable启用):

435188-20170825154504402-108077028.png

下面我们就可以为hwapp项目hwapp使用 ASP.NET Core 2.0 创建),添加.gitlab-ci.yml配置文件了(用于执行 CI 的脚本文件),简单配置(用于还原程序包和构建项目):

stages:
  - build

build_job:
  stage: build
  script:
  - dotnet restore
  - dotnet build

关于.gitlab-ci.yml的语法,可以看一下之前的文章,或者查看:

.gitlab-ci.yml提交到 GitLab,然后我们就可以看到执行结果了:

435188-20170825154435480-945894611.png

执行是失败的,我们点击进入详情,就可以看到整个的执行过程:

435188-20170825154425121-1110747778.png

microsoft/dotnet:latest是我们一开始配置 GitLab Runner 填写的 Docker Image,并且 Runner executor 选择的是docker,也就是说 GitLab Runner 的构建环境是docker,并且默认使用的镜像是microsoft/dotnet:latest,由此再进行创建相应容器,并在其容器中执行 CI 脚本,从上面的执行过程,我们就可以看出来了。

需要注意的是,GitLab Runner 配置的 Docker Image,最好是我们自定义构建的 Image 镜像,这样我们执行 CI 脚本环境,会更加丰富。

根据错误信息,我们修改下对应代码,重新提交到 GitLab,可以看到这次是构建成功的:

435188-20170825154412464-1364794235.png

大概就记录这些,接下来还需要继续完善,比如:

  • GitLab CI & ASP.NET Core 2.0 发布和部署:使用 CI 脚本编译程序,然后将编译后的文件传输到服务器上,最后运行程序,完成发布和部署。
  • GitLab CI & ASP.NET Core 2.0 & Docker 发布和部署:项目中添加Dockerfile文件,使用 CI 脚本构建自定义镜像,然后在服务器上拉取并创建相应容器,最后启动容器,完成发布和部署。





本文转自田园里的蟋蟀博客园博客,原文链接:http://www.cnblogs.com/xishuai/p/ubuntu-install-gitlab-runner-with-docker.html,如需转载请自行联系原作者
相关文章
|
26天前
|
Ubuntu NoSQL 关系型数据库
Ubuntu系统下安装常用软件
Ubuntu系统下安装常用软件
57 0
Ubuntu系统下安装常用软件
|
4天前
|
测试技术 持续交付 开发工具
《Git 简易速速上手小册》第6章:Git 在持续集成/持续部署(CI/CD)中的应用(2024 最新版)
《Git 简易速速上手小册》第6章:Git 在持续集成/持续部署(CI/CD)中的应用(2024 最新版)
27 2
|
27天前
|
Ubuntu 关系型数据库 MySQL
Ubuntu 中apt 安装MySQL数据库
Ubuntu 中apt 安装MySQL数据库
68 0
|
4天前
|
Ubuntu Docker 索引
ubuntu 20.04 安装docker教程和安装中遇到的问题解决方案(超详细 附加图文教程)
ubuntu 20.04 安装docker教程和安装中遇到的问题解决方案(超详细 附加图文教程)
27 0
|
6天前
|
Ubuntu 数据安全/隐私保护
在UBUNTU虚拟机上安装R软件包
在UBUNTU虚拟机上安装R软件包
|
7天前
|
存储 编解码 Ubuntu
0-零基础安装ubuntu(超详细安装步骤)
0-零基础安装ubuntu(超详细安装步骤)
|
7天前
|
Ubuntu Linux 定位技术
手把手教你优雅的安装虚拟机 Ubuntu —— 图文并茂
手把手教你优雅的安装虚拟机 Ubuntu —— 图文并茂
|
10天前
无缝构建与部署:GitLab CI/CD首秀的实战攻略
无缝构建与部署:GitLab CI/CD首秀的实战攻略
19 0
无缝构建与部署:GitLab CI/CD首秀的实战攻略
|
17天前
|
Ubuntu Python
WSL ubuntu 20.04安装python3
通过以上步骤,你可以在WSL的Ubuntu 20.04上成功安装Python 3。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
19 1
|
17天前
|
Ubuntu Python
ubuntu安装python3.9
通过以上步骤,你可以在Ubuntu上成功安装Python 3.9。 买CN2云服务器,免备案服务器,高防服务器,就选蓝易云。百度搜索:蓝易云
21 1

热门文章

最新文章