以下操作均在CentOs下操作

1、Gitlab install

① 启动gitlab

docker run --detach \
--hostname 115.30.149.35 \
--publish 8888:8888 --publish 24:22 \
--name gitlab \
--restart always \
--volume /data/docker/gitlab/config:/etc/gitlab \
--volume /data/docker/gitlab/logs:/var/log/gitlab \
--volume /data/docker/gitlab/data:/var/opt/gitlab \
--privileged=true \
gitlab/gitlab-ce:latest

--hostname 当前服务器的域名

--publish 24:22 SSH访问端口 默认22:22

--publish 8888:8888 http访问的端口 默认是80:80

--publish 443:443 https访问的端口

--privileged=true 授权

--volume 三个卷挂载gitlab的数据,需要提前创建好

443是https端口 80默认是http端口 根据官网文档,更改端口需要更改对应的配置文件。所在的配置信息存放在

/etc/gitlab/gitlab.rb。映射在主机的/data/docker/gitlab/config。

② 配置GitLab

由于我们没用使用默认的暴露端口,因此需要修改 /data/docker/gitlab/config/gitlab.rb。

Ⅰ、修改external_url:

# For HTTP external_url "http://115.30.149.35:8888"

or

For HTTPS (notice the https)

external_url "http://115.30.149.35:8888"

Ⅱ、修改gitlab_shell_ssh_port:

itlab_rails['gitlab_shell_ssh_port'] = 24

更多配置信息可以参考官方文档。

③ 重启gitlab

docker restart gitlab

④ 访问gitlab

浏览器输入 http://115.30.149.35:8888

官方建议4G内存,启动gitlab很吃CPU。

1核2G gitlab启动服务器卡死。解决方案:

https://yq.aliyun.com/articles/52098

2、Gitlab Runner Install

①安装gitlab-runnner rpm包

在这里选择适合你系统的gitlab runner包https://gitlab-runner-downloads.s3.amazonaws.com/latest/index.html

curl -LJO https://gitlab-runner-downloads.s3.amazonaws.com/latest/rpm/gitlab-runner_amd64.rpm

②安装rpm 包

rpm -i gitlab-runner_amd64.rpm

③注册Runner

Ⅰ、Run the following command

gitlab-runner register

Ⅱ、Enter your GitLab instance URL:(GitLab实例地址,上面GitLab的地址)

Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com )
http://115.30.149.35:8888

Ⅲ、Enter the token you obtained to register the Runner(输入注册Runner的token):

Please enter the gitlab-ci token for this runner
hUCad4cXYPEKTt

token所在地方:

​ 1、登入GitLabhttp://115.30.149.35:8888

​ 2、点击工具刀

​ 3、Overview->Runners

红色框里面即为token。

Ⅳ、Enter a description for the Runner, you can change this later in GitLab’s UI(添加Runner描述):

Please enter the gitlab-ci description for this runner
my-runner

Ⅴ、Add a Tag

Please enter the gitlab-ci tags for this runner (comma separated):

Ⅵ、Enter the Runner executor:

Please enter the executor: ssh, docker+machine, docker-ssh+machine, kubernetes, docker, parallels, virtualbox, docker-ssh, shell:
shell

④刷新GitLab页面

可看到注册的Runner。

3、提交项目到gitlab

1、创建一个项目

2、按照提示将我们的项目提交到gitlab上(Push an existing folder)

git remote add origin http://115.30.149.35:8888/root/miniserver-userapi.git

关闭VS

git push 的提示要输入gitlab的用户名和密码

编写以下.gitlab-ci.yml文件(需要放在整个项目的根目录)

提交 在具体的project 的CICD下即可看到项目在跑

4、问题集合

问题一、

docker gitlab 的用户组没有加入docker

usermod -aG docker gitlab-runner
sudo service docker restart
问题二、某次CI失败后再启动

fatal: git fetch-pack: expected shallow list

fatal: The remote end hung up unexpectedly

原因是git版本太老不持之新API,需要升级一下git:

#安装源
yum install http://opensource.wandisco.com/centos/7/git/x86_64/wandisco-git-release-7-2.noarch.rpm
#安装git
yum install git
#更新git
yum update git

参考资料:

Gitlab:https://docs.gitlab.com/omnibus/docker/

GitLab Runner:https://docs.gitlab.com/runner/install/linux-manually.html

docker-Gitlab、GitLab Runner安装的更多相关文章

  1. Docker搭建自己的Gitlab CI Runner

    转载自:https://cloud.tencent.com/developer/article/1010595 1.Gitlab CI介绍 CI:持续集成,我们通常使用CI来做一些自动化工作,比如程序 ...

  2. Docker安装GitLab与Runner(网关),常规设置,自动化用到k8s+token

    [转]图文详解k8s自动化持续集成之GitLab CI/CD Windows里面使用Debian命令行工具完成 和Docker网络相关的命令 查看某一个容器的网络 docker inspect 容器I ...

  3. docker搭建gitlab,设置邮件提醒,并运行runner

    接着http://www.cnblogs.com/wsy1030/p/8431837.html 在另一台机子运行gitlab: docker run --name='gitlab' -d -p 222 ...

  4. 在 Kubernetes 上安装 Gitlab CI Runner Gitlab CI 基本概念以及 Runner 的安装

    简介 从 Gitlab 8.0 开始,Gitlab CI 就已经集成在 Gitlab 中,我们只要在项目中添加一个.gitlab-ci.yml文件,然后添加一个Runner,即可进行持续集成.在介绍 ...

  5. 3.在 Kubernetes 上安装 Gitlab CI Runner

    结合文章:1. 在 Kubernetes 上安装 Gitlab ,地址:https://www.cnblogs.com/sanduzxcvbnm/p/13852854.html 总结: 结合开头的文章 ...

  6. 利用docker compose启动gitlab及runner

    添加docker compose配置文件 新建文件docker-compose.yml,输入如下内容: gitlab: image: 'gitlab/gitlab-ce:latest' contain ...

  7. [转] Gitlab 8.x runner安装与配置

    [From]http://muchstudy.com/2018/07/13/Gitlab-8-x-runner%E5%AE%89%E8%A3%85%E4%B8%8E%E9%85%8D%E7%BD%AE ...

  8. Gitlab CI持续集成 - GitLab Runner 安装与注册

    GitLab Runner安装 需要添加gitlab官方库: # For Debian/Ubuntu/Mint curl -L https://packages.gitlab.com/install/ ...

  9. Linux下GitLab的快速安装以及备份

    源码安装 GitLab 步骤繁琐:需要安装依赖包,Mysql,Redis,Postfix,Ruby,Nginx……安装完毕还得一个个手动配置这些软件,容易出错 一.安装 在Ubuntu 14上 修改/ ...

随机推荐

  1. oracle解除被锁定的表的状态

      select b.owner,b.object_name,a.session_id,a.locked_mode,c.serial#,c.sid||','||c.serial# from v$loc ...

  2. Jenkins安装部署与使用

    一.Jenkins平台安装部署 Jenkins官网免费获取Jenkins软件,官网地址为:http://mirrors.jenkins-ci.org/下载稳定的Jenkins版本.由于Jenkins是 ...

  3. Java 学习笔记(11)——lambda 表达式

    在写Java代码的时候,如果某个地方需要一个接口的实现类,一般的做法是新定义一个实现类,并重写接口中的方法,在需要使用的时候new一个实现类对象使用,为了一个简单的接口或者说为了一个回调函数就得额外编 ...

  4. Java 8 访问接口的默认方法

    Java 8 API提供了很多全新的函数式接口来让工作更加方便,有一些接口是来自Google Guava库里的,即便你对这些很熟悉了,还是有必要看看这些是如何扩展到lambda上使用的. 一.Opti ...

  5. 对EntityViewInfo的理解

    1,EntityViewInfo常常用作bos中接口参数,来做查询用,其中包含了FilterInfo(过滤).Selector(指定属性)以及Sorter(排序)   SelectorItemColl ...

  6. $CF908D\ New\ Year\ and\ Arbitrary\ Arrangement$ 期望$dp$

    正解:期望$dp$ 解题报告: 传送门$QwQ$ 阿关于题目里那个形如$ab$的子序列我说下,,,我我我之前$get$了好久$QAQ$.这里子序列的个数的定义是这样儿的,举个$eg$,$aabb$,就 ...

  7. MySQL基础篇(04):存储过程和视图,用法和特性详解

    本文源码:GitHub·点这里 || GitEE·点这里 一.存储过程 1.概念简介 存储程序是被存储在服务器中的组合SQL语句,经编译创建并保存在数据库中,用户可通过存储过程的名字调用执行.存储过程 ...

  8. 人生苦短,我用Python(6)

    1.分隔.合并字符串 分隔字符串是把字符串分隔为列表,而合并字符串是把列表合并为字符串,分割字符串和合并字符串可以看作是互逆操作. (1)分隔字符串 字符串对象得split()方法可以实现字符串分隔, ...

  9. asp.net core系列 74 Exceptionless服务端安装

    一.   Docker安装 Docker   要求版本Docker 18.09.0+以上 安装地址:https://www.runoob.com/docker/windows-docker-insta ...

  10. Vuex入门实践(中)-多module中的state、mutations、actions和getters

    一.前言 上一篇文章<Vuex入门实践(上)>,我们一共实践了vuex的这些内容: 1.在state中定义共享属性,在组件中可使用[$store.state.属性名]访问共享属性 2.在m ...