热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Gitlab-搭建属于自己的gitlab

一:前言前两天在弄钉钉接口的机器人,发现了有github机器人,而且配置超级简单,只需要定义一个入口,当你提交后,后台会自动发送request、payload,调用git机器人发送钉钉

一:前言

前两天在弄钉钉接口的机器人,发现了有github机器人,而且配置超级简单,只需要定义一个入口,当你提交后,后台会自动发送 request、payload,调用git机器人发送钉钉消息。

然后就想着自己搭建一个gitlab能否实现此功能,于是就说做就做;

将自己实际搭建过程和大家分享一下。(来自官网)

官网 https://about.gitlab.com/downloads/

二:"git" 家族的成员

首先解决一个容易混淆的问题,我也经常搞混:

wKioL1jnYm7wrkc7AABlmT8TgNM035.png

wKiom1jnYm7h4KoMAAAQETH95z8298.png

wKioL1jnYm_jjZVlAAAX3__lHIk606.png

git
是一种版本控制系统,是一个命令,是一种工具
gitlib
是用于实现git功能的开发库
github
是一个基于git实现的在线代码托管仓库,包含一个网站界面,向互联网开放
gitlab
是一个基于git实现的在线代码仓库托管软件,你可以用gitlab自己搭建一个类似于github一样的系统,一般用于在企业、学校等内部网络搭建git私服

三:官方推荐安装(rpm、yum)

1、安装依赖包

yum install curl policycoreutils openssh-server openssh-clients

systemctl enable sshd  &&  systemctl start sshd

yum install postfix

systemctl enable postfix  &&  systemctl start postfix

firewall-cmd --permanent --add-service=http    //永久设置http服务开放

systemctl reload firewalld

2、安装 gitlab-ce 社区版 (yum方式,ee是企业版,收费)

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh |sudo bash

wKiom1jnZA3gj2USAABKinjaqGI440.png


yum install gitlab-cewKioL1jnY-zSW6WLAABPCe2cTos452.png

wKioL1jnZFTiKFQhAAAu-KI5pPQ644.png

--------------------------------------------------------------------------------------

2、安装 gitlab-ce 社区版(rpm包安装方式)

wget https://packages.gitlab.com/gitlab/gitlab-ce/packages/el/7/gitlab-ce-XXX.rpm/download

rpm -i gitlab-ce-XXX.rpm

--------------------------------------------------------------------------------------

3、配置并开启 gitlab

gitlab-ctl reconfigure   //此时会输入如下很多信息,并启动好多服务

wKiom1jnZI-CBX_xAABqZ7w6-ks446.png

wKioL1jnZJDC09y0AAEHolAxfLM579.png


4、测试访问

首次登陆会跳出设置密码的界面,设置完后自动跳转到登录界面,默认用户名root。

登陆进去后,可以更改用户名、密码等。

初始登入时,总报502,也没有防火墙,经检查是内存不足,我是1G。

wKiom1jnZMnShYr5AABs_7W1zik001.png

5、说明

缺点:这种方式虽然说简单方便,但是定制型很差,默认只能使用postgre和nginx

主配置文件:/etc/gitlab/gitlab.rb   //可以自定义一些邮件服务等

日志地址:/var/log/gitlab/    // 对应各服务

服务地址:/var/opt/gitlab/   // 对应各服务的主目录

仓库地址:/var/opt/gitlab/git-data //记录项目仓库等提交信息

重置配置:gitlab-ctl reconfigure    //不要乱用,会重置为最原始的配置的

重启服务:gitlab-ctl  stop/start/restart  //启动命令

默认安装:postgres、nginx、redis、unicorn ......


6、配置(就是点点点,熟悉熟悉这个应用)

a、创建一个项目组groups,生成路径/var/opt/gitlab/git-data/repositories/;

b、创建一个仓库,可用三种方式链接,新的仓库、已存在的文件夹、已存在的仓库;

创建时可导入 github、gitlab、googlecode 等其他地方的仓库,需要对方token

wKiom1jot0SC1c6aAAB1ukzuME4413.png

c、根据下图路径及提示,创建用户、不加入或加入项目组或者项目或项目子组;

wKioL1jot1fACulDAAEJK0iSmxM731.png

该用户在此界面上面 Users 中设置密码后登录,根据得到的链接地址 git 到仓库

当然把你这台机器上的公钥拷到 seting -> ssh key 即可省去输入如密码一项

wKiom1jot2PDaV3uAACqxlKNzEk177.png


d、你的每次提交都会有记录在服务端  该组或该用户所在repositories中。

wKiom1jot23xZXwwAABl2SRode4076.png


-----------------------------------------------------------------------------------------

好了,简单的使用教程就到此为止了,后续更深入的使用,再与大家共同分享。

过一阵我会尝试用源码包自定制服务安装一回,敬请期待喽............

简化的使用手册:https://wenku.baidu.com/view/6ceb6662b8f67c1cfad6b88e.html




本文出自 “滕先生” 博客,请务必保留此出处http://tengxiansheng.blog.51cto.com/10693373/1914137


推荐阅读
  • This guide provides a comprehensive step-by-step approach to successfully installing the MongoDB PHP driver on XAMPP for macOS, ensuring a smooth and efficient setup process. ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • 解决PHP与MySQL连接时出现500错误的方法
    本文详细探讨了当使用PHP连接MySQL数据库时遇到500内部服务器错误的多种解决方案,提供了详尽的操作步骤和专业建议。无论是初学者还是有经验的开发者,都能从中受益。 ... [详细]
  • MySQL 数据库迁移指南:从本地到远程及磁盘间迁移
    本文详细介绍了如何在不同场景下进行 MySQL 数据库的迁移,包括从一个硬盘迁移到另一个硬盘、从一台计算机迁移到另一台计算机,以及解决迁移过程中可能遇到的问题。 ... [详细]
  • 深入解析 Spring Security 用户认证机制
    本文将详细介绍 Spring Security 中用户登录认证的核心流程,重点分析 AbstractAuthenticationProcessingFilter 和 AuthenticationManager 的工作原理。通过理解这些组件的实现,读者可以更好地掌握 Spring Security 的认证机制。 ... [详细]
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 深入理解Tornado模板系统
    本文详细介绍了Tornado框架中模板系统的使用方法。Tornado自带的轻量级、高效且灵活的模板语言位于tornado.template模块,支持嵌入Python代码片段,帮助开发者快速构建动态网页。 ... [详细]
  • 深入理解Cookie与Session会话管理
    本文详细介绍了如何通过HTTP响应和请求处理浏览器的Cookie信息,以及如何创建、设置和管理Cookie。同时探讨了会话跟踪技术中的Session机制,解释其原理及应用场景。 ... [详细]
  • c# – UWP:BrightnessOverride StartOverride逻辑 ... [详细]
  • 将Web服务部署到Tomcat
    本文介绍了如何在JDeveloper 12c中创建一个Java项目,并将其打包为Web服务,然后部署到Tomcat服务器。内容涵盖从项目创建、编写Web服务代码、配置相关XML文件到最终的本地部署和验证。 ... [详细]
  • 根据最新发布的《互联网人才趋势报告》,尽管大量IT从业者已转向Python开发,但随着人工智能和大数据领域的迅猛发展,仍存在巨大的人才缺口。本文将详细介绍如何使用Python编写一个简单的爬虫程序,并提供完整的代码示例。 ... [详细]
  • ASP.NET MVC中Area机制的实现与优化
    本文探讨了在ASP.NET MVC框架中,如何通过Area机制有效地组织和管理大规模应用程序的不同功能模块。通过合理的文件夹结构和命名规则,开发人员可以更高效地管理和扩展项目。 ... [详细]
  • 本文探讨了领域驱动设计(DDD)的核心概念、应用场景及其实现方式,详细介绍了其在企业级软件开发中的优势和挑战。通过对比事务脚本与领域模型,展示了DDD如何提升系统的可维护性和扩展性。 ... [详细]
  • 深入解析 Apache Shiro 安全框架架构
    本文详细介绍了 Apache Shiro,一个强大且灵活的开源安全框架。Shiro 专注于简化身份验证、授权、会话管理和加密等复杂的安全操作,使开发者能够更轻松地保护应用程序。其核心目标是提供易于使用和理解的API,同时确保高度的安全性和灵活性。 ... [详细]
author-avatar
討厭香菇_748
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有