Ubuntu服务器的GitLab部署

AI应用开发相关目录

本专栏包括AI应用开发相关内容分享,包括不限于AI算法部署实施细节、AI应用后端分析服务相关概念及开发技巧、AI应用后端应用服务相关概念及开发技巧、AI应用前端实现路径及开发技巧
适用于具备一定算法及Python使用基础的人群

  1. AI应用开发流程概述
  2. Visual Studio Code及Remote Development插件远程开发
  3. git开源项目的一些问题及镜像解决办法
  4. python实现UDP报文通信
  5. python实现日志生成及定期清理
  6. Linux终端命令Screen常见用法
  7. python实现redis数据存储
  8. python字符串转字典
  9. python实现文本向量化及文本相似度计算
  10. python对MySQL数据的常见使用
  11. 一文总结python的异常数据处理示例
  12. 基于selenium和bs4的通用数据采集技术(附代码)
  13. 基于python的知识图谱技术
  14. 一文理清python学习路径
  15. Linux、Git、Docker常用指令
  16. linux和windows系统下的python环境迁移
  17. linux下python服务定时(自)启动
  18. windows下基于python语言的TTS开发
  19. python opencv实现图像分割
  20. python使用API实现word文档翻译
  21. yolo-world:"目标检测届大模型"
  22. 爬虫进阶:多线程爬虫
  23. python使用modbustcp协议与PLC进行简单通信
  24. ChatTTS:开源语音合成项目
  25. sqlite性能考量及使用(附可视化操作软件)
  26. 拓扑数据的关键点识别算法
  27. python脚本将视频抽帧为图像数据集
  28. 图文RAG组件:360LayoutAnalysis中文论文及研报图像分析
  29. Ubuntu服务器的GitLab部署

文章目录


简介

GitLab 是一个基于网页的版本控制系统,它提供Git存储库的管理、代码审查、问题跟踪和活动流等功能。GitLab 由 GitLab Inc. 开发,使用 Ruby 语言编写,并使用 Git 版本控制系统作为其后端。

GitLab 提供了与GitHub类似的功能,但重点在于支持内部部署。这意味着公司或组织可以在自己的服务器上部署GitLab,从而完全控制其源代码和协作工具。

GitLab的一些关键特性包括:

  • 代码存储和管理:GitLab 提供了强大的代码存储和管理功能,支持多个版本库,允许用户轻松地克隆、推送、拉取和同步代码。
  • 问题跟踪:用户可以在GitLab中创建和跟踪问题(issue),还可以将问题分配给特定的项目成员,并设置里程碑和到期日。
  • 代码审查:GitLab 支持合并请求(Merge Requests),允许开发者在合并代码之前进行代码审查。这有助于确保代码质量并促进团队成员之间的协作。
  • 持续集成/持续部署 (CI/CD):GitLab CI/CD 是GitLab内置的自动化工具,它允许开发者在代码推送到GitLab后自动运行测试和部署。
  • Wiki 和文档:GitLab 提供了Wiki功能,允许用户为项目和团队创建和共享文档。
  • 权限管理:GitLab 允许管理员设置不同的权限级别,以确保只有合适的人员可以访问、修改或删除代码和项目。
  • 集成和API:GitLab 可以与其他工具和应用程序集成,如Slack、JIRA等。此外,GitLab 还提供了强大的API,允许开发者自定义和自动化GitLab的功能。
  • 社区和支持:GitLab 拥有活跃的社区,提供大量的文档、教程和社区支持。此外,GitLab Inc. 还提供了企业级支持。

部署

你需要一台服务器和Ubuntu系统。

1.安装依赖

python 复制代码
sudo apt-get update  
sudo apt-get install -y curl openssh-server ca-certificates postfix

2.配置环境

python 复制代码
# 配置主机名称
sudo hostnamectl set-hostname gitlab-server

# 更新/etc/hosts文件以反映新的主机名
echo "127.0.0.1 gitlab-server" | sudo tee -a /etc/hosts

# 配置防火墙允许HTTP和HTTPS访;GitLab的要求确保服务器的防火墙允许HTTP(80端口)和HTTPS(443端口)的访问。
sudo ufw allow 80/tcp  
sudo ufw allow 443/tcp  
sudo ufw enable

3.拉项目

python 复制代码
sudo apt-get install -y apt-transport-https ca-certificates curl software-properties-common  
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -  
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"  
sudo apt-get update  
sudo apt-get install -y docker-ce docker-ce-cli containerd.io  
sudo systemctl restart docker

4.通过yaml配置gitlab

创建yaml文件,内容如下:

python 复制代码
#yaml
gitlab:  
  OMNIBUS_GITLAB_EXTERNAL_URL: 'http://your_server_ip'  
  OMNIBUS_GITLAB_POSTGRES_DATA_DIR: "/var/opt/gitlab/postgresql/data"  
  OMNIBUS_GITLAB_POSTGRES_HOST: "localhost"  
  OMNIBUS_GITLAB_POSTGRES_PORT: "5432"  
  OMNIBUS_GITLAB_POSTGRES_USERNAME: "gitlab"  
  OMNIBUS_GITLAB_POSTGRES_PASSWORD: "your_password"

OMNIBUS_GITLAB_EXTERNAL_URL为你的服务器IP或域名,并设置PostgreSQL数据库的用户名和密码

5.启动GitLab服务

python 复制代码
docker run --detach \  
  --hostname gitlab.example.com \  
  --publish 443:443 --publish 80:80 --publish 22:22 \  
  --name gitlab \  
  --restart always \  
  --volume $GITLAB_HOME/config:/etc/gitlab \  
  --volume $GITLAB_HOME/logs:/var/log/gitlab \  
  --volume $GITLAB_HOME/data:/var/opt/gitlab \  
  --volume /etc/localtime:/etc/localtime:ro \  
  gitlab/gitlab-ce:latest

在浏览器中输入你的服务器IP或域名,使用默认的root账号和密码5iveL!fe登录。登录后,你可以根据自己的需求进行进一步的配置和定制。

相关推荐
webmote2 分钟前
Fabric.js 入门教程:扩展自定义对象的完整实践(V6)
运维·javascript·canvas·fabric·绘图
lory代码搬运工8 分钟前
解决PDF.js部署到IIS服务器上后报错mjs,.ftl 404 (Not Found)
运维·服务器·pdf
云云32116 分钟前
云手机:Instagram 账号管理新机遇
服务器·线性代数·安全·智能手机·矩阵
享受 生活27 分钟前
【docker】docker desktop 在windows上支持 host模式
运维·docker·容器
小安运维日记33 分钟前
CKA认证 | Day8 K8s安全
运维·云原生·容器·kubernetes·云计算
WTT001140 分钟前
CTFshow-SSRF&文件上传
大数据·运维·网络·安全·web安全·ctf
观测云1 小时前
Docker Container 可观测性最佳实践
运维·docker·容器
心灵彼岸-诗和远方1 小时前
DevOps工程技术价值流:Ansible自动化与Semaphore集成
linux·运维·网络·软件工程·devops
思码逸研发效能1 小时前
在 DevOps 中,如何应对技术债务和系统复杂性,以确保可持续的研发效能和创新?
运维·算法·研发效能·devops·研发效能度量·效能度量
m0_748251521 小时前
Linux(CentOS)安装 MySQL
linux·mysql·centos