欢迎来到站长天空!

其它服务器

当前位置: 主页 > 服务器 > 其它服务器

docker上快速搭建gitlab、gitlab-runer及实现CI/CD功能

时间:2025-12-21 07:30:05|栏目:其它服务器|点击:

目录
  • 1.docker上安装gitlab
    • 1.1 拉取镜像
    • 1.2 启动gitlab服务
    • 1.3 配置root账号密码
  • 2.docker上安装gitlab runner

    docker基本配置及命令不熟的,看我这篇

    https://www.jb51.net/article/206760.htm

    1.docker上安装gitlab

    参考:https://www.jb51.net/article/244867.htm

    1.1 拉取镜像

    docker search gitlab
    docker pull docker.io/gitlab/gitlab-ce

    1.2 启动gitlab服务

    docker run -d -p 8443:443 -p 8090:80 -p 8022:22 --restart always --name gitlab -v /mydata/gitlab/etc:/etc/gitlab -v /mydata/gitlab/log:/var/log/gitlab -v /mydata/gitlab/data:/var/opt/gitlab --privileged=true 46cd6954564a

    对该条指令解释一下

    docker run 
    -d                #后台运行,全称:detach
    -p 8443:443      #将容器内部端口向外映射
    -p 8090:80       #将容器内80端口映射至宿主机8090端口,这是访问gitlab的端口
    -p 8022:22       #将容器内22端口映射至宿主机8022端口,这是访问ssh的端口
    --restart always #容器自启动
    --name gitlab    #设置容器名称为gitlab
    -v /mydata/gitlab/etc:/etc/gitlab    #将容器/etc/gitlab目录挂载到宿主机/mydata/gitlab/etc目录下,若宿主机内此目录不存在将会自动创建
    -v /mydata/gitlab/log:/var/log/gitlab    #与上面一样
    -v /mydata/gitlab/data:/var/opt/gitlab   #与上面一样
    --privileged=true #特权指令,让容器获取宿主机root权限
    46cd6954564a    #镜像的ID,也可写镜像名称

    访问出现如下界面,如果是502,等一会

    docker上快速搭建gitlab、gitlab-runer及实现CI/CD功能

    1.3 配置root账号密码

    进入容器

    docker exec -it gitlab bash

    获取密码

    grep 'Password:' /etc/gitlab/initial_root_password

    docker上快速搭建gitlab、gitlab-runer及实现CI/CD功能

    账号是root,密码根据自己查出来的,然后登录修改密码

    docker上快速搭建gitlab、gitlab-runer及实现CI/CD功能

    2.docker上安装gitlab runner

    拉取镜像

    docker pull gitlab/gitlab-runner:latest

    启动容器

    docker run -d --name gitlab-runner \
    
    --restart always \
    
    --privileged=true \
    
    -v /mydata/gitlab-runner/config:/etc/gitlab-runner \
    
    -v /mydata/gitlab-runner/docker.sock:/var/run/docker.sock \
    
    77a7b2f30dd5

    进入runner容器,注册到gitlab上

    # 进入容器
    docker exec -it gitlab-runner /bin/bash
    
    # 运行以下注册命令
    gitlab-runner register
    
    # 输入Gitlab实例的地址
    Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com )
    http://192.168.56.10:8090  # 端口采用默认的80,否则需要加上端口,比如 http://192.168.0.253:81
    
    # 输入token
    Please enter the gitlab-ci token for this runner
    tyXBwC8frbShS4yn3nE5
    # 输入Runner的描述
    Please enter the gitlab-ci description for this runner
    [hostname] my-runner
    
    # 输入与Runner关联的标签
    Please enter the gitlab-ci tags for this runner (comma separated):
    my-tag
    
    # 输入Ruuner的执行者
    Please enter the executor: ssh, docker+machine, docker-ssh+machine, kubernetes, docker, parallels, virtualbox, docker-ssh, shell:
    docker
    
    # 如果上面执行者为docker,需要你在后续项目根部的.gitlab-ci.yml中指定docker版本
    Please enter the Docker image (eg. ruby:2.1):
    alpine:latest

    此处获取token

    docker上快速搭建gitlab、gitlab-runer及实现CI/CD功能

    通过以上命令后,就可以在gitlab中查看到了这个刚刚创建的runner

    docker上快速搭建gitlab、gitlab-runer及实现CI/CD功能

    runner注册完毕之后,还需要修改一下runner的配置文件,实现runner与宿主机的数据挂载:

    vi /mydata/gitlab-runner/config/config.toml #打开你之前配置的挂载地址

    docker上快速搭建gitlab、gitlab-runer及实现CI/CD功能

    原先是volumes = ["/cache"]
    上面的volumes数组中添加docker的挂载和gradle本地仓库的挂载,加快项目的构建速度。

    volumes = ["/cache","/var/run/docker.sock:/var/run/docker.sock","/usr/local/repos/gradle:/usr/local/repos/gradle"]

    最后重启该容器

    docker restart gitlab-runner

    上一篇:kubernetes(k8s)安装metrics-server实现资源使用情况监控方式详解

    栏    目:其它服务器

    下一篇:openstack云计算keystone架构源码分析

    本文标题:docker上快速搭建gitlab、gitlab-runer及实现CI/CD功能

    本文地址:https://zz.feitang.co/server/32386.html

    广告投放 | 联系我们 | 版权申明

    申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

    如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

    联系QQ:257218569 | 邮箱:257218569@qq.com

    Copyright © 2018-2025 站长天空 版权所有 Powered by EyouCms冀ICP备14023439号