想要拥有自己的代码仓库服务?看这一篇就够了

本文涉及的产品
对象存储 OSS,标准 - 本地冗余存储 20GB 3个月
对象存储 OSS,内容安全 1000 次 1年
文件存储 NAS,50GB 3个月
简介: 【5月更文挑战第15天】本文档介绍了在Ubuntu 20上搭建Git服务器的步骤,包括参照官方安装指南、设置EXTERNAL_URL为IP地址以跳过HTTPS,以及解决可能的问题如重启gitlab服务。文章总结了Git服务器安装的简易性,但指出可能遇到的CICD问题,并建议可考虑使用GitHub或GitLab。

1 git服务器建立

如果不清楚git的用处,可以看这里

    https://git-scm.com/

ubuntu 20 官方安装说明

   https://about.gitlab.com/install/#ubuntu

注意: 在安装时,最后一步 https 如果没有域名可用,或者不需要使用加密https协议,需要替换域名为ip地址

sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ee
替换为
sudo EXTERNAL_URL="http://192.168.136.130" apt-get install gitlab-ee

如果安装完成后,gitlab服务器仍然不能工作

    sudo gitlab-ctl restart

配置和启用外部ip地址访问服务,编辑配置,并重启服务
sudo vim /etc/gitlab/gitlab.rb
external_url "http://192.168.10.1"
sudo gitlab-ctl reconfigure

相对路径的禁用

sudo gitlab-ctl restart unicorn

登录并设置密码

生成ssh密钥对 RSA算法 至少2048位,-C标志带有带引号的注释,例如电子邮件地址,是标记SSH密钥的一种可选方式

ssh-keygen -t rsa -b 4096 -C "example@gmail.com"

更新密钥

ssh-keygen -p -f /path/to/ssh_key

2 设置

  • 设置密钥

在web界面。 用户头像--设置--ssh密钥,将生成的公钥pub添加到页面

在git ssh 客户端添加私钥地址,设置ssh代理环境

    eval $(ssh-agent -s)

添加(如果ssh产生私钥在当前目录)

    ssh-add ./id_rsa
  • 生成一个 32位随机密钥

    openssl rand -hex 32

  • 调试

综合安装的调试指令 sudo gitlab-rails console
启动控制台后添加日志监控 ActiveRecord::Base.logger = Logger.new(STDOUT)

gitlab 服务器添加和管理用户

run: alertmanager:

run: gitaly: 

run: gitlab-exporter: 

run: gitlab-workhorse:
run: grafana: 
run: logrotate: 
run: nginx: 
run: node-exporter: 
run: postgres-exporter: 
run: postgresql: 
run: prometheus: 
run: puma: 
run: redis:
run: redis-exporter: 
run: sidekiq: 
  • 语言设置
    用户登录后,在右上角 设置--用户设置--偏好设置

3 CI/CD 持续集成,持续发布

安装gitrunner参考链接:

https://docs.gitlab.com/runner/install/linux-manually.html

注册gitrunner,绑定gitlab地址url,token和执行者,注册参考文档

https://docs.gitlab.com/runner/register/index.html#docker

在gitlab服务器的设置-CICD-展开可以查到当前gitlab服务的

    url:http://192.168.136.130
    token:Qi1yC28qsoFVzQtRyaus

continue delopy, comtinue intergration
Step 1:  add .gitlab-ci.yml in the root folder of your project/repo
Step 2: git commit and git push to git repo
Step 3: Create Gitlab runner for the project  
Step 4: Start the runner
Step 5: Make any change in the project -> commit -> push

步骤3 本机配置失败 需要安装,注册runner到你的gitlab服务器 http://192.168.136.130

gitlab runner 注册

sudo gitlab-runner register --config /tmp/test-config.toml --template-config /tmp/test-config.template.toml --non-interactive --url http://192.168.136.130 --registration-token "your gitlab token" --name test-runner --tag-list bash,test --locked --paused --executor shell

或者一步步配置

sudo gitlab-runner start    
--url http://192.168.136.130 
--registration-token "your gitlab token" 
--name test-runner 
--tag-list bash,test 
--locked 
--paused 
--executor shell

4 总结

这里配置过程中介绍了SSH密钥对的生成与配置、32位随机密钥的生成,以及GitLab服务器用户管理和语言设置。以及CI/CD的配置,包括安装GitRunner、注册Runner到GitLab服务器,并提供注册命令。

在ubuntu中,安装git服务容易上手,可以尝试做一个试试。

最后,安装完成后,yml文件放在项目的根目录下,格式也正确,runner也注册成功跑起来了但是项目CICD中没有用户的项目提交记录。

如果不希望如此麻烦,可以直接使用github,gitlib 指令大同小异。
下一节我们了解其中的常用指令。

目录
相关文章
react-tsparticles 生成动态特效背景
react-tsparticles 生成动态特效背景
303 0
react-tsparticles 生成动态特效背景
|
存储 JavaScript Linux
OSS传输工具OSSutil使用介绍
本篇文章我们重点讲述一下传输工具Ossutil的使用: 若文件总量小于30T则建议使用ossutil,若大于30T建议使用
30863 1
|
6月前
|
前端开发
如何使用 Promise 的 all 方法?
如何使用 Promise 的 all 方法?
612 63
|
机器学习/深度学习 人工智能 算法
小白教程-阿里云快速搭建Stable-Diffusion WebUI环境+免费试用
Stable-Diffusion 是目前热门的AIGC图像生成方案,通过开源与社区共享模型的方式,成为AI艺术与创意产业的重要工具。本文介绍通过阿里云快速搭建SD WebUI的服务,并有免费试用权益,适合新手入门。通过详细步骤指导,帮助读者轻松上手,享受创作乐趣。
2253 0
|
运维 自然语言处理 Cloud Native
云栖实录 | 智能运维年度重磅发布及大模型实践解读
阿里云大数据运维团队重磅发布云原生大规模集群场景的 GitOps 方案,该方案基于 OAM 云原生模型,促进研发与运维人员协作,同时兼顾变更的过程管理和终态管理,可实现变更的自动化、代码化、透明化。此外,阿里云大数据运维团队分享了大模型在大数据智能运维场景的应用实践,通过引入检索增强生成(RAG)方法和其他优化策略,大幅提高了在智能问答和智能诊断方面知识的关联性和检索精度,并基于多智能体框架建立高效的数据分析和决策支持系统。
|
9月前
智启芯篇·共赴北京|“开放·连接 ”2025玄铁 RISC-V 生态大会议程公布!
2025年2月28日“开放·连接 ”2025玄铁 RISC-V 生态大会议程公布。诚邀您参加“开放·连接”2025玄铁RISC-V生态大会。汇聚全球行业专家、技术领袖及资深工程师于北京,共同探讨RISC-V技术趋势与产业未来,共筑“芯”篇章。席位有限,欢迎扫码锁定参会席位!
546 1
|
10月前
|
数据采集 存储 Serverless
5 分钟复刻你的声音,一键实现 GPT-Sovits 模型部署
想象一下,只需简单几步操作,就能生成逼真的语音效果,无论是为客户服务还是为游戏角色配音,都能轻松实现。GPT-Sovits 模型,其高效的语音生成能力为实现自然、流畅的语音交互提供了强有力的技术支持。本文将详细介绍如何利用函数计算平台部署 GPT-Sovits 模型,以构建一个高效、可扩展的 AI 语音交互系统。通过这一部署方案,开发者和企业能够快速集成语音合成功能,实现从文本到语音的无缝转换,进而推动智能语音应用的创新和发展。
1953 11
|
10月前
开放·连接 ”2025玄铁 RISC-V 生态大会今日启动报名!
开放·连接 ”2025玄铁 RISC-V 生态大会今日启动报名
992 13
|
开发工具 数据安全/隐私保护 git
gitee 创建代码仓库,并提交本地代码
gitee 创建代码仓库,并提交本地代码
511 6
|
传感器 前端开发 JavaScript
前端开发者必备的VS Code插件推荐
前端开发者必备的VS Code插件推荐

热门文章

最新文章