废柴阿尤7个月前更新关注私信 在大多数情况,构建项目都会占用大量的系统资源,如果让gitlab本身来运行构建任务的话,显然Gitlab的性能会大幅度下降。gitlab ci最大的作用就是管理各个项目的构建状态,因此,运行构建任务这种浪费资源的事情交给一个独立的gitlab runner来做就会好很多,更重要的是gitlab runner可以安装到不同的机器上,甚至是我们本机,这样完全就不会影响Gitlab本身了。从gitlab8.0开始,gitlab CI就已经集成在Gitlab中,我们只需要在项目中添加一个.gitlab-ci.yaml文件,然后运行一个Runner,即可进行持续集成。 在大多数情况,构建项目都会占用大量的系统资源,如果让gitlab本身来运行构建任务的话,显然Gitlab的性能会大幅度下降。gitlab ci最大的作用就是管理各个项目的构建状态,因此,运行构建任务这种浪费资源的事情交给一个独立的gitlab runner来做就会好很多,更重要的是gitlab runner可以安装到不同的机器上,甚至是我们本机,这样完全就不会影响Gitlab本身了。 从gitlab8.0开始,gitlab CI就已经集成在Gitlab中,我们只需要在项目中添加一个.gitlab-ci.yaml文件,然后运行一个Runner,即可进行持续集成。 什么是Runner? Gitlab Runner是一个开源项目,用于运行您的作业并将结果发送给gitlab。它与Gitlab CI结合使用,gitlab ci是Gitlab随附的用于协调作用的开源持续集成服务。 Gitlab Runner是用Go编写的,可以作为一个二进制文件运行,不需要特定于语言的要求 它皆在GNU/Linux,MacOS和Windows操作系统上运行。如果要使用Docker,Gitlab Runner需要最少Docker v1.13.0 项目流程演示图 Gitlab 安装 部署服务也可以在不跑在容器上,不影响gitlab的cicd。我这里使用rpm包安装gitlab,并且没有使用K8S安装,但是gitlab官方提供了Helm的方式在Kubernetes集群中来快速安装。 下载并安装Gitlab 本文采用清华源下载rpm包 https://mirror.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/ [root@gitlab ~]# wget https://mirror.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-16.6.6-ce.0.el7.x86_64.rpm [root@gitlab ~]# yum -y localinstall gitlab-ce-16.6.6-ce.0.el7.x86_64.rpm 配置Gitlab 编辑GitLab配置文件 [root@luckly mytest]# egrep -v "^#|^$" /etc/gitlab/gitlab.rb external_url 'https://gitlab.wzhl.love' # 修改为你自己的gitlab域名 nginx['enable'] = true nginx['client_max_body_size'] = '2048m' nginx['redirect_http_to_https'] = true nginx['ssl_certificate'] = "/etc/gitlab/ssl/gitlab.wzhl.love.crt" # 修改为你自己的域名证书 nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/gitlab.wzhl.love.key" # 修改为你自己的域名证书密钥 nginx['ssl_ciphers'] = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384" nginx['ssl_protocols'] = "TLSv1.2 TLSv1.3" redis_exporter['enable'] = false postgres_exporter['enable'] = false node_exporter['enable'] = false grafana['enable'] = false prometheus['enable'] = false alertmanager['enable'] = false 使配置生效 ## 配置生效 [root@gitlab ~]# gitlab-ctl reconfigure ## 重启 [root@gitlab ~]# gitlab-ctl restart gitlab比较吃内存,内存建议不低于4G 等待安装完成后获取初始密码 [root@luckly gitlab]# egrep -v "^#|^$" /etc/gitlab/initial_root_password Password: w1HVglBaeQkdxOb8uWlz0hXJLYbrldBFqga/0jEJvA0= [root@luckly gitlab]# 访问GitlabUI https://gitlab.wzhl.love/ 登录 用户名root Gitlab Runner安装 下载并安装Gitlab Install GitLab Runner manually on GNU/Linux | GitLab [root@gitlab ~]# wget https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/rpm/gitlab-runner_amd64.rpm [root@gitlab ~]# yum -y localinstall gitlab-runner_amd64.rpm 配置gitlab runner [root@luckly ~]# gitlab-ci-multi-runner register Runtime platform arch=amd64 os=linux pid=31248 revision=adeb4729 version=16.11.0~pre.23.gadeb4729 Running in system-mode. Enter the GitLab instance URL (for example, https://gitlab.com/): https://gitlab.wzhl.love # 你的gitlab地址 Enter the registration token: VQXQoZtYn5pkXGUorhW5 # 你的gitlab-runner注册令牌 Enter a description for the runner: [luckly]: gitlab_runner1 # 你的gitlab-runner名称,随便DIY能有效区分就行 Enter tags for the runner (comma-separated): # 你的gitlab-runner标签,可DIY,也可不填 Enter optional maintenance note for the runner: # 你的gitlab-runner描述,可DIY,也可不填 WARNING: Support for registration tokens and runner parameters in the 'register' command has been deprecated in GitLab Runner 15.6 and will be replaced with support for authentication tokens. For more information, see https://docs.gitlab.com/ee/ci/runners/new_creation_workflow Registering runner... succeeded runner=VQXQoZtY Enter an executor: ssh, parallels, docker, kubernetes, instance, custom, shell, virtualbox, docker-windows, docker+machine, docker-autoscaler: shell # 选择你的gitlab-runner执行方式 [root@luckly ~]# gitlab-runner uninstall [root@luckly ~]# gitlab-runner install --working-directory /home/gitlab-runner --user root [root@luckly ~]# systemctl restart gitlab-runner.service [root@luckly ~]# ps aux|grep gitlab-runner © 版权声明文章版权归作者所有,未经允许请勿转载。THE ENDGitlab 喜欢就支持一下吧点赞5赞赏 分享QQ空间微博QQ好友海报分享复制链接收藏