内容简介:可以netstat -ntlp查看启动的服务及端口(可以看出已经启动了nginx服务及端口为80端口,所以可以直接访问前面配置的域名或IP地址)点开Runners可以看到一个设置的manually![]
简单搭建Gitlab CI持续集成环境
简单介绍Gitlab CI的功能
- 从GitLab 8.X 开始,GitLab CI就已经集成在GitLab中,我们只要在项目中添加一个.gitlab-ci.yml文件,然后添加一个Runner,开启Runner,即可进行持续集成。而且随着GitLab的升级,GitLab CI变得越来越强大。
GitLab Runner
-
在没使用过Gitlab之前,我也有一个困惑,到底Gitlab Runner是什么东西、它的作用是什么?</br>GitLab Runner就是来执行这些构建任务的
- 而此时又会多了一个困惑,Gitlab CI不是也是用来运行构建任务的吗?</br>
一般来说,构建任务都会占用很多的系统资源(譬如编译代码),而GitLab CI又是GitLab的一部分,如果由GitLab CI来运行构建任务的话,在执行构建任务的时候,GitLab的性能会大幅下降。GitLab CI最大的作用是管理各个项目的构建状态,因此,运行构建任务这种浪费资源的事情就交给GitLab Runner来做拉!因为GitLab Runner可以安装到不同的机器上,所以在构建任务运行期间并不会影响到GitLab的性能。
1、首先部署安装Gitlab
首先安装git
yum install -y git
安装Gitlab依赖
yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python
启动ssh,postfix并设置开机启动和配置防火墙规则
sudo systemctl enable sshd sudo systemctl start sshd sudo yum install postfix sudo systemctl enable postfix sudo systemctl start postfix sudo firewall-cmd --permanent --add-service=http sudo systemctl reload firewalld
下载安装Gitlab
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash yum install gitlab-ce
修改Gitlab配置,将external_url变量地址改为自己域名或IP地址
vim /etc/gitlab/gitlab.rb ## GitLab URL ##! URL on which GitLab will be reachable. ##! For more details on configuring external_url see: ##! https://docs.gitlab.com/omnibus/settings/configuration.html#configuring-the-external-url-for-gitlab external_url 'http://gitlab.test.com' ## Roles for multi-instance GitLab
重新启动加载配置文件
gitlab-ctl reconfigure gitlab-ctl restart
可以netstat -ntlp查看启动的服务及端口(可以看出已经启动了nginx服务及端口为80端口,所以可以直接访问前面配置的域名或IP地址)
在浏览器上访问地址(管理员账号密码在UI界面上进行设置)
2、接下来安装与配置Gitlab Runner
点开Runners可以看到一个设置的manually![] 点击 install GitLab Runner 安装Gitlab Runner
# For Debian/Ubuntu $ curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.deb.sh | sudo bash $ sudo apt-get install gitlab-ci-multi-runner # For CentOS $ curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.rpm.sh | sudo bash $ sudo yum install gitlab-ci-multi-runner
注册Runner(这里可以选择注册一个指定的Runner或者注册一个共享的Runner)
指定的Runner可以理解为只能对某个份代码有效的一个Runner,共享Runner可以理解为所有的代码都可以应用得到同一个Runner,但是注册共享Runner只有admin权限又才可。
-
注册一个共享的Runner(注册指定Runner也是一样的操作)</br>
首先admin的账号下看到Runner的设置manually的URL与token信息
sudo gitlab-ci-multi-runner register
- 输入Gitlab CI地址
- 输入项目Gitlab CI token
- 输入Gitlab Runner描述
- 输入Gitlab Runner标签
- 输入Gitlab Runner执行的语言
可以查看在Gitlab 共享Runner上多了一条Runner记录
也可以使用list查看Runner的状态:
gitlab-runner list Listing configured runners ConfigFile=/etc/gitlab-runner/config.toml cml_test*.*.172.123 Executor=shell Token=ece68d167647507d1aa61d80ca0f05 URL=http://gitlab.test.com/
-
接下来编写.gitlab-ci.yml文件,推送到远程代码仓库。
这里演示一个简单的git pull操作
cat .gitlab-ci.yml # 定义 stages stages: - test # 测试 test: stage: test script: # Deploy test - ansible cml_test*.*.172.123 -a "cd /home/www/test;git pull"
(这里我使用了ansible去管理,更新代码操作)
最后推送到远程代码仓库上去。
git add . git commit -m "fix .gitlab-ci.yml" git push
-
在相应的代码库下开启的这个共享Runner。
提交代码触发CI
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- jenkins搭建一个持续集成服务
- Linux下搭建Jenkins持续集成
- SpringBoot集成gRPC微服务工程搭建实践
- SpringBoot集成gRPC微服务工程搭建实践
- DevOps 基于Walle的小型持续集成实战(四)搭建Walle
- 使用 Docker 搭建 Gitlab + Jenkins + SonarQube 的 PHP 持续集成环境
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Head First Web Design
Ethan Watrall、Jeff Siarto / O’Reilly Media, Inc. / 2009-01-02 / USD 49.99
Want to know how to make your pages look beautiful, communicate your message effectively, guide visitors through your website with ease, and get everything approved by the accessibility and usability ......一起来看看 《Head First Web Design》 这本书的介绍吧!
URL 编码/解码
URL 编码/解码
RGB HSV 转换
RGB HSV 互转工具