从代码私有性方面来看,公司不希望员工获取到全部的代码,这个时候 GitLab 无疑是最佳的选择。
但对于开源项目而言,GitHub 依然是代码托管的首选平台。

1.安装gitlab
[root@gitlab ~]# yum install -y curl policycoreutils-python openssh-server postfix wget
[root@gitlab ~]# yum localinstall gitlab-ce-12.0.3-ce.0.el7.x86_64.rpm -y

2.配置gitlab

配置访问gitlab的url
        external_url 'http://gitlab.oldxx.com'
        
        
    配置邮箱 (注册用户,忘记密码等)
        gitlab_rails['gitlab_email_enabled'] = true
        gitlab_rails['gitlab_email_from'] = ""  # 发件邮箱
        gitlab_rails['gitlab_email_display_name'] = 'Oldxx-GitLab' # 发件人显示名称

gitlab_rails['smtp_enable'] = true
        gitlab_rails['smtp_address'] = "smtp.qq.com"
        gitlab_rails['smtp_port'] = 465
        gitlab_rails['smtp_user_name'] = "" #发件人邮箱账户
        gitlab_rails['smtp_password'] = ""  #发件人邮箱客户端授权码
        gitlab_rails['smtp_domain'] = "qq.com"
        gitlab_rails['smtp_authentication'] = "login"
        gitlab_rails['smtp_enable_starttls_auto'] = true
        gitlab_rails['smtp_tls'] = true
    
    关闭Prometheus  监控 (吃内存)
        1385 prometheus['enable'] = false
    
    
3.初始化gitlab
    gitlab-ctl reconfigure
    
4.配置Host解析

5.设定gitlab  root超级管理员密码

6.登录gitlab系统后,测试邮箱是否正常 (也可以不测试)
    [root@gitlab gitlab]# gitlab-rails console
    irb(main):011:0> Notify.test_email('123@qq.com','gitlab-test','dsb').deliver_now

收件人                主题        内容

用户  组  仓库 之间的关系?
    1.创建组 dev
    2.使用dev组的身份创建一个treenb的项目
    3.创建用户, old小王 old小李 old蒙
    4.将old小王和old小李加入dev组  分配权限  old小王管理人员  old小李开发人员
    5.验证身份权限    old小王 old小李  old蒙 (登录用户看看是否能看到项目即可)
    6.使用root的身份创建一个公开的项目
        验证: old小王 old小李  old蒙是否能看见.

gitlab基本使用:   ssh
    1.新建一个项目
    2.准备两个用户  oldxu  oldqiang
    3.oldxu提交代码
    4.oldqiang拉取代码 --->提交--->oldxu拉取
    git clone git@gitlab.oldxu.com:dev/dsb.git
    cd dsb
    echo "dsb-oldxu" >> README.md
    git add README.md
    git commit -m "add README"
    git push -u origin master
!!!gitlab备份和恢复?

备份
    1.变更gitlab的备份路径,以及备份的保留时长
        [root@gitlab ~]# vim /etc/gitlab/gitlab.rb
        gitlab_rails['backup_path'] = "/data/gitlab/backups"  
        gitlab_rails['backup_keep_time'] = 604800

2.重新加载gitlab
    [root@gitlab ~]# gitlab-ctl reconfigure

3.创建我们的备份目录
    [root@gitlab ~]# mkdir -p /data/gitlab/backups
    [root@gitlab ~]# ll /data/gitlab/backups/
    -rw------- 1 git git 163840 Oct 18 15:43 1571384612_2019_10_18_12.0.3_gitlab_backup.tar

4.执行备份命令:
    [root@gitlab ~]# gitlab-rake gitlab:backup:create
    
    5.将没有问题的命令写入定时任务
    [root@gitlab ~]# crontab -l
    00 02 * * * gitlab-rake gitlab:backup:create

!!!!恢复
    1.删除所有的仓库
    2.恢复gitlab
-------------------------------------------------------------------------
    1) 停止gitlab
    [root@gitlab ~]# gitlab-ctl stop unicorn
    [root@gitlab ~]# gitlab-ctl stop sidekiq
    
    2)恢复备份(备份名不要带后缀)
    [root@gitlab ~]# gitlab-rake gitlab:backup:restore BACKUP=1571384612_2019_10_18_12.0.3

3)重启gitlab服务
    [root@gitlab ~]# gitlab-ctl resta

git jenkins 基本部署 gitlab私有仓库的更多相关文章

  1. Git版本控制及gitlab私有仓库

    Git版本控制系统 版本控制系统简介 版本控制系统是一种记录一个或若干个文件内容变化,以便将来查阅特定版本内容情况的系统 记录文件的所有历史变化 随时恢复到任何一个历史状态 多人协作开发 常见版本管理 ...

  2. Git 安装及用法 github 代码发布 gitlab私有仓库的搭建

    版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 这个版本控制软件,有 svn还有git,是一个工具. git是由linux的作者开发的 git是一个分布式版本控制系统 ...

  3. Git系列②之部署企业级开源仓库gitlab服务器

    Git系列②之部署企业级开源仓库gitlab服务器 上一篇我们介绍了github的常见使用方法,下面开始部署本地开源仓库gitlab GitLab 是一个用于仓库管理系统的开源项目. 1.安装配置gi ...

  4. go get获取gitlab私有仓库的代码

    目录 目录 1.Gitlab的搭建 2.如何通过go get,获取Gitlab的代码 目录 1.Gitlab的搭建   在上一篇文章中,已经介绍了如何搭建Gitlab Https服务<Nginx ...

  5. 部署docker-registry私有仓库

    部署docker-registry私有仓库 创建文件夹 sudo mkdir -p /var/docker-data/{registry,certs,auth} ​ sudo openssl req ...

  6. NPM私有包部署到私有仓库

    NPM私有包部署到私有仓库1.项目部署到NPM2.私有仓库的搭建1,项目部署到NPM注册NPM账号注册地址:https://www.npmjs.com/ 注册完成后进入邮箱验证 账号登录 npm lo ...

  7. git jenkins 基本部署 jenkins持续集成

    1.什么是持续集成?  持续集成来简化我们的工作 还能让产品可以快速迭代,同时还能保持代码高质量产出.2.Jenkins的安装配置:        [root@jenkins ~]# yum inst ...

  8. git jenkins 基本部署

    git  jenkins  本地仓库基础 1.安装git [root@gitlab ~]# yum install git -y 2.配置git [root@gitlab ~]# git config ...

  9. 部署 harbor 私有仓库

    安装下载依赖包 安装docker-compose 从 docker compose 发布页面下载最新的 docker-compose 二进制文件,本文以1.25.4为例 cd /opt/k8s/wor ...

随机推荐

  1. Spring Boot中@ConfigurationProperties注解实现原理源码解析

    0. 开源项目推荐 Pepper Metrics是我与同事开发的一个开源工具(https://github.com/zrbcool/pepper-metrics),其通过收集jedis/mybatis ...

  2. Flutter学习笔记(27)--数据共享(InheritedWidget)

    如需转载,请注明出处:Flutter学习笔记(27)--数据共享(InheritedWidget) InheritedWidget是Flutter中非常重要的一个功能型组件,它提供了一种数据在widg ...

  3. Spring MVC-从零开始-view-ViewResolver

    主要ViewResolver简介 InternalResourceViewResolver 将逻辑视图名解析为一个路径 BeanNameViewResolver 将逻辑视图名解析为bean的name属 ...

  4. maven 项目报错org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)解决

    idea在使用maven构建的项目中使用mybatis时报错org.apache.ibatis.binding.BindingException: Invalid bound statement (n ...

  5. Git很麻烦?不存在的!掌握这几招就够了

    废话不多说,下面直接开始了! 查看原文 确保代码库是最新的,先用这条命令把你的代码拉取到本地 git clone -- 修改完代码后,按顺序执行下面四个命令 git pull git add * /r ...

  6. css实现斜角效果

    重点代码: 使用一张图片盖住div,实现斜角效果 .triangle { position: absolute; top:; left:; width: 36px; height: 36px; bac ...

  7. 如何编写高质量的 JS 函数(3) --函数式编程[理论篇]

    本文首发于 vivo互联网技术 微信公众号 链接:https://mp.weixin.qq.com/s/EWSqZuujHIRyx8Eb2SSidQ作者:杨昆 [编写高质量函数系列]中, <如何 ...

  8. 品Spring:对@PostConstruct和@PreDestroy注解的处理方法

    在bean的实例化过程中,也会用到一系列的相关注解. 如@PostConstruct和@PreDestroy用来标记初始化和销毁方法. 平常更多的是侧重于应用,很少会有人去了解它背后发生的事情. 今天 ...

  9. [WP8.1]给Pivot的Header加上颜色

    先上个效果图 以前想实现这个给Pivot加颜色时只找到8的,通过参考8的实现方式,8.1的实现如下,在Pivot的样式上做一些修改,如下图的红框处 另外如果要改Pivot的Header里文字的颜色又要 ...

  10. 快学Scala 第二课 (apply, if表达式,循环,函数的带名参数,可变长参数,异常)

    apply方法是Scala中十分常见的方法,你可以把这种用法当做是()操作符的重载形式. 像以上这样伴生对象的apply方法是Scala中构建对象的常用手法,不再需要使用new. if 条件表达式的值 ...