来自:GitLab CI/CD系列教程(一):Docker安装GitLab_哔哩哔哩_bilibili
1. 创建虚拟机并连接Xterm
创建一个4G内存的虚拟机,否则很容易启动不了,报502
虚拟机的创建看这篇:
VMware16的安装及VMware配置Linux虚拟机_爱吃咖喱鸡的博客-CSDN博客https://blog.csdn.net/m0_49879527/article/details/124405332虚拟机创建好了以后修改一下ssh.service的端口号为60022,因为Gitlab需要占用22端口
步骤如下:
vi /etc/ssh/sshd_config
把 #Port 22修改为Port 60022 ,按下i键,修改后按下esc键,输入:wq保存并退出
修改以后重新启动一下:
systemctl restart sshd
Xterm连接看这篇:
Linux操作系统----安装使用VMware和MobaXterm_素心如月桠的博客-CSDN博客Xtermhttps://blog.csdn.net/m0_47010003/article/details/125245319
2. 安装docker
安装Docker步骤:
Docker_素心如月桠的博客-CSDN博客一、安装Docker♦️ 1.下载关于Docker的依赖环境在Xterm中输入以下代码安装依赖环境 回车yum -y install yum-utils device-mapper-persistent-datalvm2使用yum工具下载yum是软件包管理工具通过 执行 man yum可以查看yum的帮助信息♦️2.设置一下下载Docker的镜像源依赖环境下载完毕以后,设置下载的镜像源,如果不设置,会默认去Docker的官方下载,但是官方的服务器在国外,下载会比较缓慢,设置下载国内的镜https://blog.csdn.net/m0_47010003/article/details/127775185
3. 使用docker安装gitlab
第一步拉取镜像:gitlab社区版
docker pull gitlab/gitlab-ce
docker images #查看镜像
发现刚刚下载的gitlab社区版镜像:gitlab/gitlab-ce
第二步docker run命令运行容器
sudo docker run -d -p 443:443 -p 80:80 -p 22:22 --name gitlab --restart always -v /opt/docker_gitlab/config:/etc/gitlab -v /opt/docker_gitlab/logs:/var/log/gitlab -v /opt/docker_gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest
docker ps -a # 查看运行的容器
发现已经成功运行,搭建成功以后就可以去浏览器访问了,默认是80端口。
docker logs -f 8b # 根据容器id查看gitlab的实时日志
输入以上命令,如果出现以下代码,说明运行成功!
在浏览器输入网址
http://192.168.197.130:80
注意是http,192.168.197.130与Vmware虚拟机中输入ip a显示的ip地址一致,80是容器启动时docker run命令中-p属性指定的端口号
访问成功后,因为我是隔了一段时间才写的文章
忘记管理员密码了
Docker中安装了gitlab,忘记了管理员密码,进行管理员密码重置 - 安能倚天屠龙 - 博客园 (cnblogs.com)https://www.cnblogs.com/zhang-yawei/p/12692493.html
依次输入以下命令,修改用户名为root的用户的密码为12345678
修改成功后输入两次exit,退出
再次登录成功。
登录成功以后我们创建一个项目testci
然后我们去idea中 创建一个项目并上传到gitlab这个testci项目中
使用IntelliJ IDEA创建Maven项目并上传项目至gitlab等远程仓库_素心如月桠的博客-CSDN博客_maven项目上传githttps://blog.csdn.net/m0_47010003/article/details/128023709创建成功后我们在idea项目的根目录下新建.gitlab-ci.yml文件
编写.gitlab-ci.yml文件(注意前面有个“.”)
回到idea中,在当前项目路径下右键新建.gitlab-ci.yml文件。
在.gitlab-ci.yml文件中输入如下内容:
在- echo后面输入什么在gitlab上面运行就会输出什么
这里我只是.gitlab-ci.yml文件只是示例,具体yml文件内容很多我就不截图了。
添加完.gitlab-ci.yml文件后再次commit,push
push成功:
进入GitLab中,查看。
二、Docker安装GitLab Runner
1.gitlab-runner
在安装前先来解释说明一下什么是流水线
2. pipeline【流水线】
每次提交代码就会触发流水线,
点击第一条流水线可以看到如下图所示:
一条流水线的4个阶段stage和任务 job
gitlab只是一个代码管理平台,正在的执行环境是gitlab-runner里面
所有的ci/cd操作都是在gitlab-runner里面执行的,gitlab-runner就是为ci/cd和流水线提供一个运行环境。
ci/cd就是我们提交代码以后可以自动的集成,自动部署并执行一些任务,而gitlab-runner就是流水线就是一个自动化的基础环境。stage的话意思是阶段,定义同一组的任务,job是执行的最小单元。
上面说的.gitlab-ci.yml文件就是定义流水线的具体执行的内容的
接下来安装gitlab-runner
在Xterm中输入以下代码:没有镜像会自动去拉取,所以不用push镜像,直接使用docker run命令
docker run -d --name gitlab-runner --restart always -v /src/gitlab-runner/config:/etc/gitlab-runner -v /var/run/docker.sock:/var/run/docker.sock gitlab/gitlab-runner:latest
docker ps查看,可以看到gitlab-runner的Ports,对外暴露的端口是空的,这是因为gitlab-runner不对外提供服务
接下来注册gitlab-runner
docker exec -it gitlab-runner gitlab-runner register
以上划红线的内容就是我们要输入的
第一个url地址http://192.168.197.130/和令牌token去gitlab中复制
复制上面的url和token,回到Xterm中右键paste上
接下来的描述随便写,然后是tag,写testci,执行器executor,写shell,回车就可以成功注册
回到gitlab中查看,如下图: