gitlab-runner部署
Gitlab在线安装部署参考
一、 环境
|
系统 |
版本 |
备注 |
|
Centos |
7_64 |
建议使用4GB RAM和4或8个CPU内核 |
二、 安装并配置必要的依赖项
a) 在centos7的系统防火墙中打http和ssh访问
#sudo yum install -y curl policycoreutils-python openssh-server
#sudo systemctl enable sshd
#sudo systemctl start sshd
#sudo firewall-cmd --permanent --add-service=http
#sudo systemctl reload firewalld
b) 安装postfix以发送通知邮件
#sudo yum install postfix
#sudo systemctl enable postfix
#sudo systemctl start postfix
c) iptables规则
#iptables -I INPUT -p tcp --dport <端口号> -j ACCEPT
#service iptables save
#service iptables restart
三、 添加gitlab镜像源,并安装
a) 添加GitLab包存储库。
#curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
或者清华镜像源
[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key
b) 设置域名访问地址并安装gitlab
#sudo EXTERNAL_URL="https://gitlab.example.com" yum install -y gitlab-ce
# EXTERNAL_URL也可配置为EXTERNAL_URL=http://IP:端口
开始使用
四、 配置邮箱(例qq企业邮箱)
编辑配置文件/etc/gitlab/ gitlab.rb
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "你的邮箱"
gitlab_rails['smtp_password'] = "你的密码"
gitlab_rails['smtp_domain'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
gitlab_rails['gitlab_email_from'] = '你的邮箱'
gitlab_rails['gitlab_email_display_name'] = 'Gitlab'
重启服务
#gitlab-ctl reconfigure
发送测试邮件
#gitlab-rails console
#Notify.test_email('接收邮件的邮箱','1234','5678').deliver_now
五、 常用命令
GitLab常用命令
sudo gitlab-ctl start # 启动所有 gitlab 组件;
sudo gitlab-ctl stop # 停止所有 gitlab 组件;
sudo gitlab-ctl restart # 重启所有 gitlab 组件;
sudo gitlab-ctl status # 查看服务状态;
sudo gitlab-ctl reconfigure # 启动服务;
sudo vim /etc/gitlab/gitlab.rb # 修改默认的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace # 检查gitlab;
sudo gitlab-ctl tail # 查看日志;
安装jdk
一、 下载jdk
选择相应版本进行下载
下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
如果本地有直接上传
二、 安装jdk
#rpm -ivh jdk-8u202-linux-x64.rpm
三、 设置环境变量&&更名
l 更名
#cd /usr/java
# mv jdk1.8.0_202-amd64/ jdk1.8
l 设置环境变量
如设置所有用户环境变量则修改/etc/profile
更改如下
执行命令使之生效
#source /etc/profile
安装maven
一、 从官网下载安装包
#cd /opt/
Wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.0/binaries/apache-maven-3.6.0-bin.zip
二、 解压&&更名&&更改权限
# unzip apache-maven-3.6.0-bin.zip
# mv apache-maven-3.6.0 maven3.6
#chmod 755 /opt/maven3.6 -R
三、 设置环境变量&&生效
l 如果设置所有用户环境变量则修改/etc/profile
更改如下
执行命令使之生效
#source /etc/profile
四、 测试
#mvn -v
五、 修改配置文件
修改maven源,配置文件为:/opt/maven3.6/conf/ settings.xml
alimavenaliyun mavenhttp://maven.aliyun.com/nexus/content/groups/public/centralalimavencentralaliyun mavenhttp://maven.aliyun.com/nexus/content/repositories/central/jdk8 <java8_home>/usr/java/jdk1.8jdk8 " v:shapes="_x0000_s1027">
安装gitlab-runner
一、 添加镜像源
在/etc/yum.repos.d目录下新建文件gitlab-runner.repo填写如下
[gitlab-runner]
name=gitlab-runner
baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/yum/el7/
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key
二、 安装gitlab-runner
#yum clean all
# yum makecache
# m install gitlab-runner -y
三、 注册gitlab-runner
说明gitlab-runner有两种,
l 共享型
Runner分为
共享型(Shared Runner):使用gitlab的root用户下的token注册
特享型(Specific Runner):使用gitlab项目相关人员下的token注册
查看token及url方式如下图

执行job方式后来选择为shell。图片为docker

注册成功后gitlab会有相应显示
l 私有型
登陆gitlab查看某项目的url和token #每个项目的token都不一样注意
例如:
1. 查看token
单击设置 ---》 ci/cd à runner 如下图所示url和token

2. 注册runner
登陆gitlab-runner执行命令注册
# gitlab-ci-multi-runner register #注册runner 如下图所示依次输入
# gitlab-ci-multi-runner start runner-name

#常用命令如下:
gitlab-ci-multi-runner status runner-name #查看状态
gitlab-ci-multi-runner stop runner-name #停止服务
gitlab-ci-multi-runner start runner-name #开启服务

3. 配置文件(忽略)
配置文件在 /etc/gitlab-runner/config.toml
l Docker模式下
添加参数:pull_policy = "if-not-present" #如果本地存在则不去下载,或者配置私有
一、 Gitlab-runner简要使用说明
它用来运行你定制的任务(jobs)并把结果返回给 GitLab。 GitLab Runner 配合GitLab CI(GitLab 内置的持续集成服务) 协调完成任务。
相关详细文档
https://docs.gitlab.com/runner/commands/README.html
一、简单写法
url: https://www.cnblogs.com/doufy/p/10729714.html
官方文档:https://docs.gitlab.com/ce/ci/quick_start/README.html
gitlab-runner部署的更多相关文章
- GitLab Runner部署(kubernetes环境)
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- 用GitLab Runner自动部署GitBook并不难
相信很多程序员喜欢用 GitBook 来写电子书.教程或者博客,看了不少文章,貌似都缺少说明如何将 GitBook 部署到版本库,并自动在服务器上 build,然后将生成的静态网站部署到云服务器上. ...
- Gitlab Runner实现CI/CD自动化部署asp.net core应用
环境说明 一台git服务器(192.168.169.7),安装gitlab,docker. 一台web服务器(192.168.169.6),安装git,gitlab runner,docker,dot ...
- docker+gitlab+gitlab-runner部署
环境 服务端:centos7 客户端:window 在centos7上部署docker+gitlab+gitlab-runner,win10利用ssh连接,开发人员只需提交代码,就可以进行项目文件上传 ...
- Gitlab Runner实现NetCore自动化持续集成
目录 1.开发工具 2.GitLab服务器搭建 3.新建webapi 4.Dockerfile配置 5.配置docker-compose.yml 6.配置.gitlab-ci.yml 7.在GitLa ...
- Docker Gitlab CI 部署 Spring Boot 项目
目前在学习这一块的内容,但是可能每个人环境都不同,导致找不到一篇博客能够完全操作下来没有错误的,所以自己也写一下,记录一下整个搭建的过程. Docker 的安装这里就不赘述了,基本上几行命令都可以了, ...
- Gitlab Runner的分布式缓存实战
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Gitlab + Gitlab runner + Window powershell
需求说明 根据领导要求,要把python 项目移到Gitlab 进行管理,并利用Gitlab CI/CD 进行自动化测试,打包,部署.(听起来很简单吧) 比较头大,完全没有经验,python 也是刚上 ...
- GitLab私有化部署 - CI/CD - 持续集成/交付/部署 - 源代码托管 & 自动化部署
预期目标 源代码管理 借助GitLab实现源代码托管,私有化部署版本,创建项目,创建用户组,分配权限,项目的签入/牵出等. 自动化部署 源代码产生变更时(如签入),自动化编译并发布到指定服务器中部署, ...
- 【gitlab】gitlab快速部署教程
gitlab快速部署教程 部署环境 Ubuntu 16.04(亲测可用) 开始部署 安装依赖 sudo apt-get install curl openssh-server ca-certifica ...
随机推荐
- REDHAT YUM本地源的搭建和使用
yum源一般分为两种,本地yum源和本地网络yum源,前者是通过文件提供安装包,后者是通过网络下载安装包: 由于Redhat7.3的yum源需要注册付费,所以往往会出现下载yum源安装包失败,如下图: ...
- ASP.NET MVC案例教程(四)
ASP.NET MVC案例教程(四) 前言 通过前几篇文章,我们已经能比较自如的使用ASP.NET MVC来呈现页面和数据了.但是,有一个大问题没有解决:如何处理表单数据.例如,我们将要实现的公告发布 ...
- Javascript基础语法(二)
三.运算符 1. 算术运算符 + - * / % ++ -- 1.1赋值运算符 = += . -= .*=. /= 1 +=2; ==> 1 = 1 + 2; 2. 比较运算符 > ...
- 网站https证书SSL证书相关
网站https证书SSL证书相关 二级域名可以申请证书来使用,主域名申请的单域名证书,二级域名不在https加密保护内,通配符证书可以保护主域名下所有的二级子域名,二级域名等于和主域名使用的同一张证书 ...
- 数据库session立即生效(64---8192) SCOPE参数
SCOPE=MEMORY|SPFILE|BOTH 指示了修改参数时的“作用域”: SCOPE=MEMORY :只在实例中修改,重启数据库后此次修改失效. SCOPE=SPFILE :只修改SPFILE ...
- c# 调用RDP和SSH实现远程登陆
1.ssh的登陆实现: windows平台可以安装OpenSSHforWindows 后,可以通过cmd 执行ssh的指令. 也可以在c#编程中实现ssh的登陆: var p = new System ...
- QSettings 类
一 .QSettings介绍: 用户通常希望应用程序记住其设置.在windows中,这些设置保存在注册表中,ios在属性文件列表中,而unix,在缺乏标准的情况下,其存储在ini文本中.QSettin ...
- C sharp #001# hello world
饮水思源:金老师的自学网站 索引 编写一个简单的控制台程序. 日期计算的结构化编程实现 日期计算机面向对象编程实现 直接应用已有组件 1.编写一个简单的控制台程序. using System; usi ...
- JZ2440学习笔记之内存设备
通过OM[1:0]选择启动的设备: OM[1:0]=00,地址0对应的是Internal 4K RAM,且Nand的前4K会被复制到这里,得到执行: OM[1:0]=01,地址0对应的是Nor Fla ...
- Docker Registry私有仓库搭建
部署registry 准备一个registry.mydocker.com 的证书 对私有registry取名registry.mydocker.com 目录规划 仓库数据目录:/data/docker ...