眼睛斜视

注册

 

发新话题 回复该主题

使用GitLab实现CICD [复制链接]

1#

目录

Runner配置

Gitlab.yml牛刀小试

模版化流水线

一、前言

持续集成、持续交付和持续部署是老生常谈的问题,有效提高软件产品在开发、测试、上线效率和减少人工介入,在敏捷开发、DEVOPS、软件开发流程中尤为重要。业界常见的实现方式有jenkins、gitlabCI/CD以及自研的pipeline。下面结合目前DEVOPS流程来聊一聊这一块,如图:

主要使用的是gitlabCI/CD,由一个名为.gitlab.yml的文件进行配置,该文件位于仓库的根目录下,文件中指定pipeline由gitlabRunner执行。添加了.gitlab-ci.yml到仓库中,GitLab将检测到该文件,并使用名为GitLabRunner的工具运行的整个构建流程。

在这个文件中定义需要运行的脚本、定义包含的依赖项、选择要按顺序运行的命令和要并行运行的命令,定义要在何处部署应用程序,以及指定是否要自动运行脚本或手动触发脚本。

二、DOCKER化的Runner

1.通过docker来启动runner

#mkdir/opt/gitlab-runner/###-v将宿主机的目录挂在进docker容器里面###/etc/gitlab-runner映射到容器/gitlab-runner-hipos-02的/etc/gitlab-runner###/root/.docker/config.json映射到容器的/root/.docker/config.json###/var/run/docker.sock映射到/var/run/docker.sock#dockerrun-d\--namegitlab-runner-hipos-02\--restartalways\-v/opt/gitlab-runner/gitlab-runner-hipos-02/config:/etc/gitlab-runner\-v/root/.docker/config.json:/root/.docker/config.json\-v/var/run/docker.sock:/var/run/docker.sock\gitlab/gitlab-runner:latest##runner容器运行情况[root

VM-1-17-centosopt]#dockerpsCONTAINERIDIMAGECOMMANDCREATEDSTATUSPORTSNAMESa17cc5a96gitlab/gitlab-runner:latest"/usr/bin/dumb-init…"5hoursagoUp4hoursgitlab-runner-hipos-02

2.配置runner注册进gitlab

dockerrun--rm-it\-v/opt/gitlab-runner/gitlab-runner-hipos-02/config:/etc/gitlab-runner\-v/root/.docker/config.json:/root/.docker/config.json\-v/var/run/docker.sock:/var/run/docker.sock\gitlab/gitlab-runner:latestregisterRuntimeplatformarch=amd64os=linuxpid=revision=fcversion=13.7.0Runninginsystem-mode.EntertheGitLabinstanceURL(forexample,

分享 转发
TOP
发新话题 回复该主题