安装gitlab-runner,注册runner到gitlab
首先服务器要安装gitlab
gitlab服务器如果低于9.0版本,gitlab-runner要选低版本
这里gitlab 版本 8.8.0, gitlab-runner版本 v1.11.1
gitlab安装不多做叙述,安装gitlab-runner
这里有个重要的,如果是docker部署的gitlab,宿主机端口如果映射的不是80,则需更改环境external_url=域名,否则会报以下错误
端口已经改了不是80了
fatal: unable to access 'http://gitlab-ci-token:xxxxxx@xxx.xxx.xxx.xxx/dlh/citest.git/': Failed to connect to xxx.xxx.xxx.xxx port 80: Connection refused
创建工作目录 /usr/local/docker/runner
创建构建目录 /usr/local/docker/runner/environment
下载 jdk-8u11-linux-x64.tar.gz 并复制到 /usr/local/docker/runner/environment
下载 apache-maven-3.6.1-bin.tar.gz 并复制到 /usr/local/docker/runner/environment
在 /usr/local/docker/runner/environment 目录下创建 Dockerfile,安装jdk还有maven到容器里
这里使用的gitlab版本为8.8.0社区版,gitlab-runner只能使用2.0以下的版本
FROM gitlab/gitlab-runner:v1.11.1
MAINTAINER dlh 2694116027@qq.com# 安装 Java
RUN mkdir -p /usr/local/java
WORKDIR /usr/local/java
COPY jdk-8u11-linux-x64.tar.gz /usr/local/java
RUN tar -zxvf jdk-8u11-linux-x64.tar.gz && \rm -fr jdk-8u11-linux-x64.tar.gz
# 安装 Maven
RUN mkdir -p /usr/local/maven
WORKDIR /usr/local/maven
# RUN wget https://raw.githubusercontent.com/topsale/resources/master/maven/apache-maven-3.5.3-bin.tar.gz
COPY apache-maven-3.6.1-bin.tar.gz /usr/local/maven
RUN tar -zxvf apache-maven-3.6.1-bin.tar.gz && \rm -fr apache-maven-3.6.1-bin.tar.gz
# COPY settings.xml /usr/local/maven/apache-maven-3.6.1/conf/settings.xml# 配置环境变量
ENV JAVA_HOME /usr/local/java/jdk1.8.0_11
ENV MAVEN_HOME /usr/local/maven/apache-maven-3.6.1
ENV PATH $PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
WORKDIR /
在 /usr/local/docker/runner 目录下创建 docker-compose.yml
version: '3.1'
services:gitlab-runner:build: environmentrestart: alwayscontainer_name: gitlab-runnerprivileged: truevolumes:- ./config:/etc/gitlab-runner# 映射docker命令- /var/run/docker.sock:/var/run/docker.sock- /bin/docker:/bin/docker
执行docker-compose -f docker-compose.yml up -d
查询正在运行的容器
docker ps
进入到容器里
docker exec -it 0be3ea7795b1 bash
设置maven变量到系统配置
vi /etc/profile
加上
export PATH=$PATH:$MAVEN_HOME/bin
然后 source /etc/profile
这一步很重要
// 进入容器 进行gitlab-runner 注册
root@0be3ea7795b1:/# gitlab-runner register
执行完后会有提示,输入几个内容
这个链接在 gitlab设置里的runner里有步骤
输入Gitlab CI地址 http://xxx.xxx.xxx.xxx:8099
输入项目Gitlab CI token HMgHedsyRsd9LySEDQjH
输入Gitlab Runner描述 ci-test
输入Gitlab Runner标签 test-tag
输入Gitlab Runner执行的语言 shellroot@44914cf556e1:/# gitlab-runner register
Running in system-mode. Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):
http://xxx.xxx.xxx:8099
Please enter the gitlab-ci token for this runner:
HMgHedsyRsd9LySEDQjH
Please enter the gitlab-ci description for this runner:
[44914cf556e1]: gitlab-rn^Hunner-test2
Please enter the gitlab-ci tags for this runner (comma separated):
git-test1
Whether to run untagged builds [true/false]:
[false]: true
Registering runner... succeeded runner=HMgHedsy
Please enter the executor: docker, docker-ssh, parallels, shell, docker-ssh+machine, kubernetes, ssh, virtualbox, docker+machine:
shell
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!
.gitlab-ci.yml文件放在项目根目录下
在gitlab上,gitlab-runner执行ci报错fatal: unable to access 'http://gitlab-ci-token:xxxxxx@ip/xxx/citest.git
gitlab为8.x版本的会这样,如果是docker部署的gitlab,宿主机端口如果映射的不是80,则需更改环境external_url=域名,否则会报以下错误
fatal: unable to access 'http://gitlab-ci-token:xxxxxx@ip/xxx/citest.git/': Failed to connect to xx.xx.xx.xxx port 80: Connection refused
gitlab为8.x以上的版本,在创建runner的时候,用交互式去创建
gitlab-runner register -n \--url http://xxxxxx/ci/ \--registration-token xxxx \--executor docker \--description "runner1" \--docker-image "docker:stable" \--clone-url http://xxxxx
加上clone-url参数
或者在/etc/gitlab-runner/config.toml文件里
[[runners]]name = "test11"url = "http://xxxx"token = "xxxx"executor = "docker"#加上这个clone_url 参数,指定 urlclone_url = "xxx"[runners.docker]tls_verify = falseimage = "docker:stable"privileged = falsedisable_cache = falsevolumes = ["/cache"][runners.cache]
参考文章
作者:撸帝
链接:https://www.jianshu.com/p/2a0f1e109c71
来源:简书
安装gitlab-runner,注册runner到gitlab相关推荐
- GitLab CI/CD 基础入门 Runner注册配置使用
特点 开源: CI/CD是开源GitLab社区版和专有GitLab企业版的一部分.(极狐) 易于学习: 官方具有详细的学习操作文档. 无缝集成: CI/CD是GitLab的一部分,支持从计划到部署,具 ...
- GitLab 严重漏洞可导致攻击者窃取runner 注册令牌
聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 GitLab Community 和 Enterprise Edition 均受严重漏洞 (CVE-2022-0735) 影响,它可导致攻击者窃 ...
- 详解Gitlab Runner注册与过程中遇到的问题
前言 官方文档 之前我们已经搭建好了一个gitlab平台,也已经将项目托管于Gitlab平台了,现在要开始使用Gitlab的CD功能,但是还要做一步工作,就是创建一个Gitlab Runner并将Ru ...
- CICD之 gitlab和gtilab runner
gitlab官网地址 官网文档地址 https://docs.gitlab.com/runner/install/docker.html 一.gitlab 1.gitlab安装 方式一:rpm包安装( ...
- gitlab ip变更runner拉取代码失败、shell启动springboot项目启动起来。
gitlab ci/cd拉取代码失败 使用gitlab cicd 构建自动化部署时,runner拉取代码失败了,突然想到是ip变更了(用的虚拟机,nat模式改成了桥接模式,然后导致ip变更了),拉取代 ...
- 使用docker 注册runner
获取gitlab 信息 需要从gitlab中获取两个信息,一个是gitlab的域名,一个是需要注册runner的token gitalb 的runner按照范围可以有三种 全局类型即整个gitlab ...
- GitLab容器注册服务已集成于Docker容器
GitLab最近发布了集成式Docker容器注册(Container registry)服务,该服务由GitLab工程师Mark Pundsack开发,主要可用于将Docker容器映像与GitLab的 ...
- gitLab账号注册,登陆,配置SSH,验证
文章目录 前言 注册账号 登陆 添加SSH 验证配置 前言 本文主要目的是讲述gitlab账号注册,登陆功能,以及如何生成ssh key,并添加ssh key到gitlab中.通过git工具将gitl ...
- 手把手gitlab最详细版安装教程centos7下安装(最新版),修复gitlab
1.服务器要求,8G内存以上,4核心cpu以上 2. 新建 /etc/yum.repos.d/gitlab_gitlab-ce.repo ,内容: [gitlab-ce] name=Gitlab CE ...
最新文章
- ecshop /api/client/api.php、/api/client/includes/lib_api.php SQL Injection Vul
- HTML DOM Console对象
- Matlab与数据结构 -- 如何获取给定目录中的文件
- java调用python的函数_java如何调用python的.py文件,以及如何执行里面的函数,和创建...
- 特征工程+特征组合+特征交叉+特征变换+生成特征
- JTable动态显示隐藏列
- c语言 倒计时不清屏_打字游戏超细讲解(C语言基础小游戏)
- 无根树转有根树的一般方法
- element-ui做背单词的网站
- 阿里云MVP闪亮云栖大会,技术干货持续更新中
- 单链表——判断两个单链表(无头节点)是否相交,如果相交,返回单链表的第一个结点
- 百度新闻 谷歌新闻_每日新闻摘要:到目前为止,Google I / O提供的最佳信息
- 感染新冠后为啥会丧失​嗅觉?最新《细胞》论文终于搞明白了!
- qt(qu chu biao ti lan /窗口非暴力置顶)
- macos系统镜像iso_系统原装ISO镜像软碟通刻录启动U盘教程
- 猿猿趴架构实战--03 什么是架构
- excel合并两列内容_合并多个Excel文件内容到一个Excel中
- 提权-Windows操作系统
- Django连接MySQL数据库错误:django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module
- oracle 断电起不来,解决方案