Ubuntu22.04阿里云服务器 Gitlab搭建CICD

gitlab搭建cicd流水线教程

1、阿里云申请免费云盘

申请免费云盘用于创建gitlab 申请方法百度

2、安装gitlab-ce

更新系统:

bash 复制代码
sudo apt update
sudo apt upgrade -y

安装必要的依赖:

bash 复制代码
sudo apt install -y curl openssh-server ca-certificates postfix

postfix 是用来发送邮件的 MTA(邮件传输代理),在安装过程中,Postfix 会询问你配置类型。选择"Internet Site"然后按回车键继续,接着输入你的主机名或域名。

关闭防火墙

bash 复制代码
sudo ufw disable
sudo ufw status  查看防火墙状态

安装 GitLab CE

添加 GitLab 包源:

首先需要添加 GitLab 的官方包源到你的系统中。你可以通过以下命令来完成:

bash 复制代码
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

安装 GitLab CE:

添加了源之后,就可以安装 GitLab CE 了:

bash 复制代码
sudo apt-get install gitlab-ce

修改对外端口管理

bash 复制代码
cd /etc/gitlab/
vi gitlab.rb

修改字段:
external_url 'http://8.154.25.238:80'
nginx['listen_port'] = 80
可以直接在rb文件下添加 

初始化gitlab

bash 复制代码
gitlab-ctl reconfigure
gitlab-ctl restart

网页打开:

bash 复制代码
http://8.154.25.238:80

登录账号 root

密码:

3、安装注册gitlab-runner

复制代码
# For Debian/Ubuntu/Mint
 curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash

 # For RHEL/CentOS/Fedora
 curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash



# MacOS
sudo brew install gitlab-ci-multi-runner
 # For Debian/Ubuntu/Mint

 sudo apt-get install gitlab-ci-multi-runner

 # For RHEL/CentOS/Fedora
 sudo yum install gitlab-ci-multi-runner

4、代码测试

4.1、创建项目 例如cicd_test

4.2、添加ssh秘钥拉取项目代码

4.3、创建**.gitlab-ci.yml**文件

文件内容:

XML 复制代码
stages: # 分段
  - deploy

deploy-job:
  stage: deploy
  script:
    - echo "abc"
    - echo "123"

注意:文件名一点不能差。。。坑

4.4、push代码后runner开始作业

至此结束。。。。。后面出个gitlab-ci编写教程

相关推荐
不怕犯错,就怕不做6 小时前
git prune 自动删除本地记录中那些远程已经不存在的分支引用
linux·服务器·git
峰向AI11 小时前
GenOffice:开源 Office 套件,字节级保留、本地转换、BYOK模式
github
ELI_He99912 小时前
如何还原已经推送的提交
git
其实防守也摸鱼12 小时前
权限提升与横向移动:从内网渗透到域控的完整技术图谱
运维·服务器·数据库·安全·github·copilot·渗透
m4Rk_13 小时前
【论文阅读】Agent 记忆机制(57):MemSearch-o1——从查询词元生长证据,重组 Deep Search 记忆路径
论文阅读·人工智能·学习·开源·github
️学习的小王13 小时前
Git项目提交忽略文件怎么做?以Python项目为例,详解.gitignore
git·python·elasticsearch
其实防守也摸鱼13 小时前
免杀与持久化入门:从载荷免杀到隐蔽通道的完整指南
运维·服务器·数据库·安全·github·copilot·渗透
sec_jay13 小时前
一个面向有限本地语料库的、单智能体、工具调用型 Agentic RAG 原型--关于agent的实践调研报告
github
愚蠢得人13 小时前
Git Worktree实用指南:同时开发两个分支,不再反复切换
git
goplaysource16 小时前
IPTV 频道去重:用哈希解决"同一个频道出现十遍"的问题
github