git jenkins 基本部署 gitlab私有仓库
从代码私有性方面来看,公司不希望员工获取到全部的代码,这个时候 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私有仓库的更多相关文章
- Git版本控制及gitlab私有仓库
Git版本控制系统 版本控制系统简介 版本控制系统是一种记录一个或若干个文件内容变化,以便将来查阅特定版本内容情况的系统 记录文件的所有历史变化 随时恢复到任何一个历史状态 多人协作开发 常见版本管理 ...
- Git 安装及用法 github 代码发布 gitlab私有仓库的搭建
版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统. 这个版本控制软件,有 svn还有git,是一个工具. git是由linux的作者开发的 git是一个分布式版本控制系统 ...
- Git系列②之部署企业级开源仓库gitlab服务器
Git系列②之部署企业级开源仓库gitlab服务器 上一篇我们介绍了github的常见使用方法,下面开始部署本地开源仓库gitlab GitLab 是一个用于仓库管理系统的开源项目. 1.安装配置gi ...
- go get获取gitlab私有仓库的代码
目录 目录 1.Gitlab的搭建 2.如何通过go get,获取Gitlab的代码 目录 1.Gitlab的搭建 在上一篇文章中,已经介绍了如何搭建Gitlab Https服务<Nginx ...
- 部署docker-registry私有仓库
部署docker-registry私有仓库 创建文件夹 sudo mkdir -p /var/docker-data/{registry,certs,auth} sudo openssl req ...
- NPM私有包部署到私有仓库
NPM私有包部署到私有仓库1.项目部署到NPM2.私有仓库的搭建1,项目部署到NPM注册NPM账号注册地址:https://www.npmjs.com/ 注册完成后进入邮箱验证 账号登录 npm lo ...
- git jenkins 基本部署 jenkins持续集成
1.什么是持续集成? 持续集成来简化我们的工作 还能让产品可以快速迭代,同时还能保持代码高质量产出.2.Jenkins的安装配置: [root@jenkins ~]# yum inst ...
- git jenkins 基本部署
git jenkins 本地仓库基础 1.安装git [root@gitlab ~]# yum install git -y 2.配置git [root@gitlab ~]# git config ...
- 部署 harbor 私有仓库
安装下载依赖包 安装docker-compose 从 docker compose 发布页面下载最新的 docker-compose 二进制文件,本文以1.25.4为例 cd /opt/k8s/wor ...
随机推荐
- 【Win10】时钟精确到秒
[Win10]时钟精确到秒 前言 想要桌面右下角的时钟"xx:xx:xx"精确到秒,可以使用绿色免费开源软件Dism++,也可以从该软件的代码中读到方法:用注册表实现. 步骤 进入 ...
- 基于SpringBoot实现AOP+jdk/CGlib动态代理详解
动态代理是一种设计模式.在Spring中,有俩种方式可以实现动态代理--JDK动态代理和CGLIB动态代理. JDK动态代理 首先定义一个人的接口: public interface Person { ...
- java数据结构——哈希表(HashTable)
哈希表提供了快速的插入操作和查找操作,每一个元素是一个key-value对,其基于数组来实现. 一.Java中HashMap与Hashtable的区别: HashMap可以接受null键值和值,而Ha ...
- frp 端口映射
简介 frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透. 场景 利用处于内网或防火墙后 ...
- 2019年十大开源WEB应用防火墙点评
2019年十大开源WEB应用防火墙点评 随着WEB应用的爆炸式成长和HTTPS加密的普及,针对网络应用层的攻击,像SQL注入.跨站脚本攻击.参数篡改.应用平台漏洞攻击.拒绝服务攻击等越来越多,传统的防 ...
- 无暇代码(js的整洁之道)
如果你关注代码本身和代码的编写方式,而不是只关心它是否能工作,那么你写代码是有一定的水准.专业开发人员将为未来的自己和“其他人”编写代码,而不仅仅只编写当前能工作就行的代码.在此基础上,简洁代码可以定 ...
- 说说 Java 线程间通信
序言 正文 一.Java线程间如何通信? 线程间通信的目标是使线程间能够互相发送信号,包括如下几种方式: 1.通过共享对象通信 线程间发送信号的一个简单方式是在共享对象的变量里设置信号值:线程A在一个 ...
- 死磕 java同步系列之redis分布式锁进化史
问题 (1)redis如何实现分布式锁? (2)redis分布式锁有哪些优点? (3)redis分布式锁有哪些缺点? (4)redis实现分布式锁有没有现成的轮子可以使用? 简介 Redis(全称:R ...
- jQuery常用方法(六)-jQuery 工具
JQuery Utilities 方法说明 jQuery.browser .msie 表示ie jQuery.browser.version 读取用户浏览器的版本信息 jQuery.boxModel ...
- 如何安装PHPstorm并配置php运行环境运行php项
php是程序开发者常用的编程语言,那么它就需要一款简单实用的集成开发环境,也就是一款舒服的编辑器,今天笔者为大家介绍phpstorm这款软件,并详细的讲解如何用它配置php项目 工具/原料 笔 ...