Skip to content

gitlab

server 安装

docker 方式

eg: gitlab/gitlab-ce:14.0.0-ce.0

  • 前提
    mkdir -p ./data/config
    mkdir -p ./data/logs
    mkdir -p ./data/opt
    
version: '3.1'
services:
  gitlab:
    image: gitlab/gitlab-ce:14.0.0-ce.0
    volumes:
      - ./data/config:/etc/gitlab
      - ./data/logs:/var/log/gitlab
      - ./data/opt:/var/opt/gitlab
    restart: always
    ports:
      - 443:443
      - 8083:80
      - 222:22
  • 优化资源
    version: '3.1'
    services:
      gitlab:
        image: gitlab/gitlab-ce:14.0.0-ce.0
        volumes:
          - ./data/config:/etc/gitlab
          - ./data/logs:/var/log/gitlab
          - ./data/opt:/var/opt/gitlab
        restart: always
        ports:
          - 443:443
          - 8083:80
          - 222:22
        environment:
          TZ: Asia/Shanghai
          GITLAB_OMNIBUS_CONFIG: |
            external_url 'http://gitlab.soulteary.com'
            gitlab_rails['time_zone'] = 'Asia/Shanghai'
    
            # 关闭电子邮件相关功能
            gitlab_rails['smtp_enable'] = false
            gitlab_rails['gitlab_email_enabled'] = false
            gitlab_rails['incoming_email_enabled'] = false
    
            # Terraform
            gitlab_rails['terraform_state_enabled'] = false
    
            # Usage Statistics
            gitlab_rails['usage_ping_enabled'] = false
            gitlab_rails['sentry_enabled'] = false
            grafana['reporting_enabled'] = false
    
            # 关闭容器仓库功能
            gitlab_rails['gitlab_default_projects_features_container_registry'] = false
            gitlab_rails['registry_enabled'] = false
            registry['enable'] = false
            registry_nginx['enable'] = false
    
            # 包仓库
            gitlab_rails['packages_enabled'] = false
            gitlab_rails['dependency_proxy_enabled'] = false
    
            # GitLab KAS
            gitlab_kas['enable'] = false
            gitlab_rails['gitlab_kas_enabled'] = false
    
            # Mattermost
            mattermost['enable'] = false
            mattermost_nginx['enable'] = false
    
            # Kerberos
            gitlab_rails['kerberos_enabled'] = false
            sentinel['enable'] = false
    
            # GitLab Pages
            gitlab_pages['enable'] = false
            pages_nginx['enable'] = false
    
            # 禁用 PUMA 集群模式
            puma['worker_processes'] = 0
            puma['min_threads'] = 1
            puma['max_threads'] = 2
    
            # 降低后台守护进程并发数
            sidekiq['max_concurrency'] = 5
    
            gitlab_ci['gitlab_ci_all_broken_builds'] = false
            gitlab_ci['gitlab_ci_add_pusher'] = false
    
            # 关闭监控
            prometheus_monitoring['enable'] = false
            alertmanager['enable'] = false
            node_exporter['enable'] = false
            redis_exporter['enable'] = false
            postgres_exporter['enable'] = false
            pgbouncer_exporter['enable'] = false
            gitlab_exporter['enable'] = false
            grafana['enable'] = false
            sidekiq['metrics_enabled'] = false
    

初始密码:

cat ./data/config/initial_root_password

runner 安装

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-runner/yum/el7-x86_64/gitlab-runner-14.0.0-1.x86_64.rpm

常用命令

 # 注册
gitlab-runner register
 # 验证
gitlab-runner verify 
 # 查看
gitlab-runner list 
 # 注销
gitlab-runner unregister
 # 注销所有
gitlab-runner unregister --all-runners

添加runner

  1. 登录server, 进入 /admin/runners 页面, 获取关键信息

  2. 执行

gitlab-runner register

输入上面信息

description:描述(自己定) tags: 标签(自己定,多个用逗号分隔)

ps:这下刷新页面可以看见runner了

  1. 选择 executor
type remark
docker 会在容器中构建执行任务
shell shell命令执行
  1. 进入 /admin/runners 页面,选中 runner 编辑

Active
Paused runners don't accept new jobs Protected This runner will only run on pipelines triggered on protected branches Run untagged jobs Indicates whether this runner can pick jobs without tags Lock to current projects When a runner is locked, it cannot be assigned to other projects

Comments