gitlab 安装和基本介绍 原创 长跑者1号 2018-09-26 08:45:20 博主文章分类:持续集成CI ©著作权 文章标签 gitlab 安装 目录介绍 文章分类 运维 ©著作权归作者所有:来自51CTO博客作者长跑者1号的原创作品,请联系作者获取转载授权,否则将追究法律责任 一 安装gitlab 1 环境简介 官方相关介绍: 硬件要求 . 存储 必要的硬盘空间在很大程度上取决于您想要存储在GitLab中的存储库的大小,但根据经验,您应该至少拥有与您的所有存储库合并占用的空闲空间。 如果您希望将来灵活扩展硬盘空间,请考虑使用LVM进行安装,以便在需要时添加更多硬盘。 除了本地硬盘驱动器,您还可以安装支持网络文件系统(NFS)协议的卷。此卷可能位于文件服务器,网络连接存储(NAS)设备,存储区域网络(SAN)或Amazon Web Services(AWS)弹性块存储(EBS)卷上。 如果你有足够的RAM内存和最近的CPU,GitLab的速度主要受硬盘寻道时间的限制。快速驱动(7200 RPM及以上)或固态驱动器(SSD)将提高GitLab的响应能力。 . 中央处理器 • 1个核心最多支持100个用户,但由于所有工作和后台作业都在同一个核心上运行,因此应用程序可能会慢一点 • 2核是建议的核心数,最多支持500个用户 • 4个核心最多可支持2,000个用户 • 8个核心最多支持5,000个用户 • 16个内核最多可支持10,000个用户 • 32个核心最多可支持20,000个用户 • 64个内核最多可支持40,000个用户 . 内存 至少8GB可寻址内存来安装gitlab,在运行gitlab之前,至少需要4GB可用空间, 建议至少有2BG交换,建议将内核的swappiness 设置为较低水平10 足以 vim /etc/sysctl.conf vm.swappiness = 10 . 数据库 运行数据库服务器至少要有5-10GB的可存储空间,但具体要求取决于gitlab安装的大小 强烈支持使用postgresql Mysql/mariadb(不支持所有的gitlab功能) Postgresql 要求 从GitLab 10.0开始,需要PostgreSQL 9.6或更高版本,并且不支持早期版本。我们强烈建议用户使用PostgreSQL 9.6,因为这是用于开发和测试的PostgreSQL版本。 使用PostgreSQL的用户必须确保将pg_trgm扩展加载到每个GitLab数据库中。可以通过对每个数据库运行以下查询来启用此扩展(使用PostgreSQL超级用户): CREATE EXTENSION pg_trgm; 在某些系统上,您可能需要安装额外的软件包(例如 postgresql-contrib)以使此扩展可用。 . Gitlab geo 要求 如果您使用的是GitLab Geo,则跟踪数据库也需要postgres_fdw扩展名。 CREATE EXTENSION postgres_fdw; . Unicorn 可以增加unicorn worker 的数量,有助于减少应用程序的响应时间并提高处理并行请求的能力 对于大多数情况,建议使用:CPU核心+1=unicorn worker 对于所有2GB及以上的机器,建议至少有3个,如果是1GB建议使用两个 . redis和 sidekiq Redis 存储所有用户会话和后台任务队列,redis的存储要求很低,每个用户大约25KB,sidekiq使用多线程进程处理后台作业,此过程从整个redis堆栈(200M+)开始,但由于内存泄露,他可能会随着时间的推移而增长,在非常活跃的服务器上,sidekiq进程可以使用1GB+内存 . Prometheus 及相关,使用默认设置,这些进程将消耗大概200M内存 2 安装相关依赖 yum install -y vim lrzsz wget gcc gcc-c++ make makeconf cmake yum -y install readline readline-devel ncurses-devel gdbm-devel glibc-devel tcl-devel openssl-devel curl-devel expat-devel db4-devel byacc sqlite-devel libyaml libyaml-devel libffi libffi-devel libxml2 libxml2-devel libxslt libxslt-devel libicu libicu-devel system-config-firewall-tui redis sudo wget crontabs logwatch logrotate perl-Time-HiRes git cmake libcom_err-devel.i686 libcom_err-devel.x86_64 nodejs cmake libicu-devel libicu openssl openssl-devel 3 下载并配置yum源 curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash 4 安装软件 yum install gitlab-ce-11.0.6-ce.0.el7.x86_64 5 配置相关参数 URL 访问地址配置 6 配置访问相关解析 7 更新gitlab 配置 更新前需保证80端口未被占用,否则不能启动,因为其中的nginx代理默认启动的是80端口,若需更改,则需要在/etc/gitlab/gitlab.rb 中配置相关的nginx配置,切记,不能配置8080,因为8080已被gitlab内部配置默认占用unicorn master(此处也可改变),如果改成其他端口,则URL应写成server10.com:8060即可访问gitlab 查看是否成功 查看服务状态 8 登录和基本语言配置 登录修改root密码 通过root用户名和修改后的密码进行登录测试 设置环境为简体中文 保存并更新配置 查看 二 gitlab配置文件介绍及插件介绍 1 配置文件介绍 1 主配置文件介绍 其中包含所有的主配置的情况,组件的配置,其配置后需要进行reconfigure 进行生效配置并重启方可生效,其生效后的结果在各组件目录中可以看到 2 主目录 3 各个组件目录 4 放置日志文件 2 插件介绍 1 repository: 代码库,可以是硬盘或NFS文件系统 2 NGINX: web 入口 3 数据库:包含信息 Repository 中的数据(元数据,issue,合并请求merge request等) 可以登录的web用户信息 4 Redis 缓存 ,负责分发信息 5 sidekq: 后台任务,主要负责发送电子邮件,任务来自与redis 6 unicorn (gitlab rails):gitlab自身的web,包含了gitlab主进程,负责处理快速/一般任务,与redis一起工作,内容有 A 通过检查存储在redis中的用户来检查权限 B 为sidekiq 制作任务 C 从仓库(warehouse) 取东西或在哪里移动东西 7 gitlab-shell:用于SSH交互,而不是http,gitlab-shell 通过redis与sidekiq 进行通信,并直接通过TCP访问unicorn 8 gitaly: 后台服务,专门负责访问磁盘以高效处理git,并处理缓存耗时操作,所有的git操作都通过gitaly 进行处理 9 gitlab-workshorse: 反向代理服务器,可以处理与redis无关的请求,磁盘上的CSS,JS 文件等),处理git push/pull 请求,处理redis的链接(修改有redis发送的响应或发送给redis请求,管理redis的长期web socket链接) 10 mail_room: 处理邮件请求,恢复gitlab发送的邮件时,gitlab会调用此服务. 大体原理: gitlab 使用nginx将前端请求代理到UNicorn web 服务器,默认情况下,unicorn 与前端之间的通信是通过unix domain 套接字进行的,但也支持通过TCP请求转发,web访问前端/home/git/gitlab/pubilc绕过unicorn 服务来提供静态页面,上传和预编译资源,gitlab使用Unicorn web 提供网页和gitlab api,使用sidekiq作为作业队列, 反过来,它使用redis 作为作业信息,元数据和作业的非持久化数据后端。 gitlab应用程序使用mysql或postgresql 作为持久化数据库,保存用户,权限,issue其他元数据等。 通过http/https提供repository时,gitlab使用gitlab API 来解释授权和访问以及提供git对象。 gitlab-shell 通过ssh提供repository,他管理/home/git/,ssh/authorized_keys 内的SSH密钥,不应该手动编辑,gitlab-shell通过gitaly访问bare repository 已提供git对象并与redis 进行通信以向sidekiq提交作业以供gitlab处理,gitlab-shell 查询gitlab API一确定授权和访问。 3 gitlab 忘记密码 修改密码为"12345678" 三 配置邮件服务器 四 配置项目相关 1 创建用户组 2 创建项目(在指定的用户组中) 3 创建用户 4 用户加组 5 登陆用户 6 配置客户端 7 配置文件并上传 8 创建分支 9 保证master分支不能上传 五 gitlab 备份与恢复 1 通过配置文件进行备份配置 2 手动进行备份和恢复 1 进入gitlab备份目录并进行备份 命令: gitlab-rake gitlab:backup:create 2 删除gitlab中的项目 3 关闭相应的服务 4 进行备份恢复 直接输入yes 5 进行配置并启动 6 查看是否恢复成功 7 配置定时任务进行定时备份 30 00 * * 5 /usr/bin/gitlab-rake gitlab:backup:create &> /dev/null && echo "gitlab 备份成功" | mail -s "gitlab 备份" 18829172841@163.com 赞 收藏 评论 分享 举报 上一篇:mysql优化2 下一篇:jenkins安装与基本配置(Linux平台) 提问和评论都可以,用心的回复会被更多人看到 评论 发布评论 全部评论 () 最热 最新 相关文章 Gitlab基础篇: Gitlab docker 安装部署、Gitlab 设置账号密码 安装docker gitlab前确保docker环境,如果没有搭建docker请查阅“Linux docker 安装文档”可以看到在docker ps -a 打印中看到 容器ID ps 展示的容器ID只时原来的一部分。修改docker镜像的gitlab容器端口前需要把gitlab容器以及docker镜像关闭。通过容器ID就能找到containers下具体哪一个是gitlab容器的配置。修改config.v2.json、hostconfig.json文件。docker 下载 gitlab容器。 git docker gitlab c++语言基本介绍 C++ 是一种广泛使用的编程语言,它是由 Bjarne Stroustrup 在 1983 年创建的,并从 C 语言中派生出来。C++ 提供了面向对象、过程化和泛型编程的编程范式,因此,它被广泛用于开发各种类型的应用程序,包括操作系统、游戏、嵌入式系统、服务器、图形用户界面 (GUI) 等。 ios 泛型编程 运算符 微软云Azure Open AI(一):基本介绍 Azure OpenAI 是微软 Azure 云计算服务(Azure Global版本)的一部分,它集成了由 OpenAI 开发的人工智能技术。OpenAI 是一家专注于人工智能研究的公司,其目标是促进和发展友好的 AI,以便所有人共同受益,并确保 AI 的应用对人类是安全和有益的。 微软与 OpenAI Azure 人工智能 开发者 zabbix安装和基本介绍 zabbix安装和基本介绍 zabbix安装和基本介绍 redis安装和基本介绍 目录安装基本介绍安装安装步骤:第一步:安装gccyum install gcc-c++第二步:wget方式 下载redis压缩包,并解压,以及编译下载:wget http://download.redis.io/releases/redis-5.0.2.tar.gz(wget方式 下载redis压缩包)解压tar -zxvf redis-3.2.9.tar.gzcd redis... redis 数据库 数据 服务器 关系型数据库 redis-基本介绍和安装 Redis 简介REmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希... redis jmeter_基本介绍和安装 jmeter_基本介绍和安装一、jmeter 介绍1、jmeter是由apache公司开发的纯java的开源项目,可以用来做接口测试和性能测试。2、jmeter 具备高移植性,可以实现跨平台运行3、jmeter 可以实现分布式负载、4、jmeter 采用多线程,5、jmeter 具有较高的扩展性二、jmeter的安装1、第一下载jmeter包,jdk,(2)安装jdk,jdk安装好以后配置环境变量 jmeter_基本介绍和安装 gitlab安装与基本使用 这里会使用一个前端项目自动化部署的方式来进行了解 Node 安装项目依赖、打包都需要 Nginx web 项目部署必须「正向代理、方向代理、负载均衡等等」 gitlab 自动化部署 CI CD git GitLab Runner介绍及安装 一、GitLab Runner 介绍GitLab Runner是一个开源项目,用于运行您的作业并将结果发送回 git docker d3 gitlab基本维护和使用 gitlab基本维护和使用,启动服务, 查看日志, 报错登陆处理。 git gitlab Saltstack (一)基本介绍和安装以及基本的配置 运维自动化之 saltstack 运维 自动化 saltstack Tokyo Tyrant基本规范(1)--介绍和安装 Tokyo Tyrant基本规范,翻译自tt官网,地址。 本节介绍Tokyo Tyrant的基本知识和安装方法。 一.介绍 Tokyo Tyrant是名为Tokyo Cabinet的DBM的网络接口的套装。既然这个DBM拥有高性能,你可能烦恼于多个程序共享同一个数据库,或者远程程序访问数据库。 gitlab介绍 ##作者:robin带下划线的是表示有疑问的________Gitlab和github的区别:虽然GitLab是一个从头到位模仿Github的家伙,但是我们确实有这样的需求,并且他还是开源的。相比Gtihub来说可以减少很多成本。Github本身是有企业版可以在公司环境搭建的,但是价钱不菲,看看Github Enterprise定价就知道了,最小的也要一年5000美金,对于小团队小公司是一笔不小的 功能 github gitlab gitlab和git安装 gitlab安装forcentos6.*添加yum源vim/etc/yum.repos.d/gitlab-ce.repo[gitlab-ce]name=gitlab-cebaseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6Enabled=1gpgcheck=0更新本地yum缓存yummakecache安装gitlab-ce社区版 git gitlab gitlab安装和汉化 下载源https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/?C=M&O=Ayuminstallpolicycoreutils-python-yrpm-ivhgitlab安装包修改访问地址vi/etc/gitlab/gitlab.rbvi/var/opt/gitlab/gitlab-rails/etc/gitlab.yml端口重启gi gitlab 汉化 gitlab安装和迁移 一,如图所示:二,office-com-gitlab-01安装[root@office-com-gitlab-01~]#systemctlstopfirewalld[root@office-com-gitlab-01~]#systemctldisablefirewalld[root@office-com-gitlab-01~]#setenforce0[root@office-com-gitlab- gitlab安装和迁移 gitlab介绍、安装及gitlab CI、与jenkins的对比 gitlab介绍、安装及gitlab CI、与jenkins的对比 jenkins ci 运维 git Gitlab安装和使用 GitLab是一个利用 Ruby on Rails 开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。 GitLab拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。它 git html 配置文件 web界面 创建项目 Gitlab的安装及基本使用(一) (一)、简介git的有点1、git是分布式的,svn不是git分布式本地就可以用,可以随便保存各种历史痕迹,不用担心污染服务器,连不上服务器也能提交代码、查看log。2、GIT分支和SVN的分支不同分支在SVN中实际上是版本库中的一份copy,而git一个仓库是一个快照,所以git切换、合并分支等操作更快速。3、git有一个强大的代码仓库管理系统-gitlab可以很方便的管理权限、代码review gitlab LAMP介绍与基本安装 1、LAMP架构介绍LAMP(linux+apache(httpd)+mysql+php简称为LAMP(LAMP指的Linux(操作系统)、ApacheHTTP服务器,MySQL(有时也指MariaDB,数据库软件)和PHP(有时也是指Perl或Python)的第一个字母,一般用来建立web应用平台。)三个角色可以装在不同的服务器上但是apache+php必须在一台服务器上LAMP三者工作思路:第 LAMP 介绍 基本安装