云服务器 ECS 建站教程:GitLab的安装及使用

GitLab的安装及使用

前言

GitLab是利用 Ruby on Rails 一个开源的版本管理系统,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

它拥有与Github类似的功能,能够浏览源代码,管理缺陷和注释。可以管理团队对仓库的访问,它非常易于浏览提交过的版本并提供一个文件历史库。

团队成员可以利用内置的简单聊天程序(Wall)进行交流。

它还提供一个代码片段收集功能可以轻松实现代码复用,便于日后有需要的时候进行查找。

Git的家族成员

Git:是一种版本控制系统,是一个命令,是一种工具。

Gitlib:是用于实现Git功能的开发库。

Github:是一个基于Git实现的在线代码托管仓库,包含一个网站界面,向互联网开放。

GitLab:是一个基于Git实现的在线代码仓库托管软件,你可以用gitlab自己搭建一个类似于Github一样的系统,一般用于在企业、学校等内部网络搭建git私服。

Gitlab的服务构成

Nginx:静态web服务器。

gitlab-shell:用于处理Git命令和修改authorized keys列表。

gitlab-workhorse:轻量级的反向代理服务器。

logrotate:日志文件管理工具。

postgresql:数据库。

redis:缓存数据库。

sidekiq:用于在后台执行队列任务(异步执行)。

unicorn:An HTTP server for Rack applications,GitLab Rails应用是托管在这个服务器上面的。

GitLab工作流程

GitLab Shell

GitLab Shell有两个作用:为GitLab处理Git命令、修改authorized keys列表。

当通过SSH访问GitLab Server时,GitLab Shell会:

限制执行预定义好的Git命令(git push, git pull, git annex)

调用GitLab Rails API 检查权限

执行pre-receive钩子(在GitLab企业版中叫做Git钩子)

执行你请求的动作 处理GitLab的post-receive动作

处理自定义的post-receive动作

当通过http(s)访问GitLab Server时,工作流程取决于你是从Git仓库拉取(pull)代码还是向git仓库推送(push)代码。

如果你是从Git仓库拉取(pull)代码,GitLab Rails应用会全权负责处理用户鉴权和执行Git命令的工作;

如果你是向Git仓库推送(push)代码,GitLab Rails应用既不会进行用户鉴权也不会执行Git命令,它会把以下工作交由GitLab Shell进行处理:

调用GitLab Rails API 检查权限
执行pre-receive钩子(在GitLab企业版中叫做Git钩子)
执行你请求的动作
处理GitLab的post-receive动作
处理自定义的post-receive动作

GitLab Workhorse

GitLab Workhorse是一个敏捷的反向代理。它会处理一些大的HTTP请求,比如文件上传、文件下载、Git push/pull和Git包下载。其它请求会反向代理到GitLab Rails应用,即反向代理给后端的unicorn。

Gitlab环境部署

ECS配置要求:内存2G以上

方法一:镜像部署

镜像名称:GitLab代码管理(Centos 64位 | GitLab) | 镜像帮助文档

进入镜像详情页面,单击立即购买,按提示步骤购买 ECS 实例。

购买完成之后,登录”ECS 管理控制台”,在左边导航栏里,单击”实例”,进入 ECS 实例列表页,选择所购 ECS 实例所在的地域,并找到所购 ECS 实例,在”IP 地址”列获取该实例的公网 IP 地址。

注意:镜像部署好后默认是禁止远端访问的,所以直接访问ECS服务器的公网IP是不能访问到GitLab的登录界面的,请先运行/alidata目录下的gitlab_opennet.sh脚本,开启远程访问,然后再通过浏览器访问公网IP来访问GitLab的主页。

方法二:手动部署:

1、配置yum源

vim /etc/yum.repos.d/gitlab-ce.repo

复制以下内容:

[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6
Repo_gpgcheck=0
Enabled=1
Gpgkey=https://packages.gitlab.com/gpg.key

2、更新本地yum缓存

sudo yum makecache

3、安装GitLab社区版

sudo yum intall gitlab-ce        #自动安装最新版
sudo yum install gitlab-ce-x.x.x    #安装指定版本

GitLab常用命令:

sudo gitlab-ctl start    # 启动所有 gitlab 组件;
sudo gitlab-ctl stop        # 停止所有 gitlab 组件;
sudo gitlab-ctl restart        # 重启所有 gitlab 组件;
sudo gitlab-ctl status        # 查看服务状态;
sudo gitlab-ctl reconfigure        # 启动服务;
sudo vim /etc/gitlab/gitlab.rb        # 修改默认的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace    # 检查gitlab;
sudo gitlab-ctl tail        # 查看日志;

GitLab使用

登录GitLab

1、在浏览器的地址栏中输入ECS服务器的公网IP即可登录GitLab的界面,第一次登录使用的用户名和密码为 root 和 5iveL!fe。

2、首次登录会强制用户修改密码。密码修改成功后,输入新密码进行登录。


创建Project

1、安装Git工具linux:安装Git,使用自带的源安装。

yum install git

2、生成密钥文件

使用ssh-keygen生成密钥文件.ssh/id_rsa.pub。


3.在GitLab的主页中新建一个Project


4.添加ssh key导入步骤2中生成的密钥文件内容:


ssh key添加完成:

项目地址,该地址在进行clone操作时需要用到:

简单配置

1、配置使用Git仓库的人员姓名

git config --global user.name "上海驻云"

2、配置使用Git仓库的人员email,填写自己的公司邮箱

git config --global user.email "support@jiagouyun.com"

3、克隆项目,在本地生成同名目录,并且目录中会有所有的项目文件

git clone git@iZbp1h7fx16gkr9u4gk8v3Z:root/test.git

上传文件

1、进入到项目目录

cd test/

2、创建需要上传到GitLab中的目标文件

echo “test” >  /root/test.sh

3、将目标文件或者目录拷贝到项目目录下

cp /root/test.sh ./

4、将test.sh文件加入到索引中

git add test.sh

5、将test.sh提交到本地仓库

git commit -m “test.sh”

6、将文件同步到GitLab服务器上

git push -u origin master

7、在网页中查看上传的test.sh文件已经同步到GitLab中

原文链接

时间: 2024-11-02 21:55:20

云服务器 ECS 建站教程:GitLab的安装及使用的相关文章

云服务器 ECS 建站教程:Discuz安装教程

Discuz安装教程 Discuz! 是全球成熟度最高.覆盖率最大的论坛软件系统之一.自 2001 年 6 月面世以来,Discuz! 已拥有 15 年以上的应用历史和 200 多万网站用户案例.目前,Discuz! 已经发展成为一个以社区为基础的专业建站平台,让论坛(BBS).社交网络(SNS).门户(Portal).群组(Group).开放平台(Open Platform)应用充分融合于一体,帮助网站实现一站式服务. 适用对象 适用于熟悉 ECS,熟悉 Linux 系统,刚开始使用阿里云进行

云服务器 ECS 建站教程:Drupal建站教程(CentOS7)

Drupal建站教程(CentOS7) Drupal是使用PHP语言编写的开源内容管理框架(CMF),它由内容管理系统(CMS)和PHP开发框架(Framework)共同构成.它用于构造提供多种功能和服务的动态网站,能支持从个人博客到大型社区等各种不同应用的网站项目.本文主要说明如何在阿里云ECS上搭建Drupal电子商务网站. 适用对象 适用于熟悉ECS,熟悉Linux系统,刚开始使用阿里云进行建站的用户. 基本流程 使用云服务器 ECS 搭建 Drupal 网站的操作步骤如下: 选购ECS

云服务器 ECS 建站教程:搭建Joomla基础管理平台

搭建Joomla基础管理平台 Joomla是一套知名的内容管理系统.Joomla是使用PHP语言加上Mysql数据开发的软件系统,Joomla的最新版本是3.x,这一版本实现了许多技术上的优化调整,是目前的稳定版本. 本文主要说明如何在阿里云ECS上搭建Joomla基础管理平台.使用的操作系统为Linux CentOS 6.5 64位. 适用对象 适用于熟悉 ECS,熟悉 Linux 系统, ECS 实例搭建刚开始使用阿里云进行建站的用户. 基本流程 使用云服务器 ECS 搭建 Joomla 平

云服务器 ECS 建站教程:搭建Magento电子商务网站(CentOS7)

搭建Magento电子商务网站(CentOS7) Magento是一款开源电商网站框架,其丰富的模块化架构体系及拓展功能可为大中型站点提供解决方案.它使用PHP开发,支持版本范围从PHP 5.6到PHP 7.1,并使用MySQL存储其数据.本文主要说明如何在阿里云ECS上搭建Magento电子商务网站.使用的操作系统为Linux CentOS 7. 2 64位. 适用对象 适用于熟悉ECS,熟悉Linux系统,刚开始使用阿里云进行建站的用户. 基本流程 使用云服务器 ECS 搭建Magento网

云服务器 ECS 建站教程:部署Ghost博客(CentOS 7)

部署Ghost博客(CentOS 7) Ghost是一个免费的开源博客平台,使用JavaScript编写,基于Node.js,旨在简化个人博客和在线出版物的在线发布过程. 此外,将来随着业务的扩展,您可以利用阿里云强大的产品平台,平滑地横向和纵向扩展服务容量,例如: 扩展单个 ECS 实例的 CPU 和内存规格,增强服务器的处理能力. 增加多台 ECS 实例,并利用负载均衡,在多个实例中进行负载的均衡分配. 利用弹性伸缩(Auto Scaling),根据业务量自动增加或减少 ECS 实例的数量.

云服务器 ECS 建站教程:手工部署Java Web项目

手工部署Java Web项目 Tomcat 一个开源的且免费的 Java Web 服务器,常用来作为 web 开发的工具.它可以托管由 servlet,JSP 页面(动态内容),HTML 页面,javascript,样式表,图像(静态内容)组成的 Java Web 应用程序. 此外,将来随着业务的扩展,您可以利用阿里云强大的产品平台,平滑地横向和纵向扩展服务容量,例如: 扩展单个 ECS 实例的 CPU 和内存规格,增强服务器的处理能力. 增加多台 ECS 实例,并利用负载均衡,在多个实例中进行

云服务器 ECS 建站教程:搭建WordPress网站

搭建 WordPress 网站 WordPress 是一款常用的搭建个人博客网站的软件.使用阿里云的云服务器 ECS,您可以方便地搭建 WordPress,发布个人博客. 此外,将来随着业务的扩展,您可以利用阿里云强大的产品平台,横向和纵向扩展服务容量,例如: 扩展单个 ECS 实例的 CPU 和内存规格,增强服务器的处理能力. 增加多台 ECS 实例,并利用负载均衡,在多个实例中进行负载的均衡分配. 利用弹性伸缩(Auto Scaling),根据业务量自动增加或减少 ECS 实例的数量. 利用

云服务器 ECS 建站教程:手动建站(Windows环境)

手动建站(Windows环境) 本节介绍如何使用阿里云镜像,一键部署 Web 环境,包括安装 IIS 组件(不包括 FTP 组件).PHP 环境.重定向 Rewrite.MySQL.phpwind.该示例不需要更换系统盘. 部署之前,请确保您的实例可以连接公网. 在浏览器中打开阿里云的云市场. 搜索 阿里云windows一键安装web环境,然后购买该软件. 登录阿里云管理控制台.打开 产品与服务 > 云市场. 单击 已购买的服务.在 阿里云Windows一键安装Web环境 的右侧,单击 管理.

云服务器 ECS 建站教程:快速使用AMH建站

快速使用AMH建站 AMH 是一套通过 Web 控制和管理服务器的 Linux 服务器管理系统以及虚拟主机管理系统.使用阿里云的云服务器 ECS 安装 AMH 可以快速地搭建出任意 PHP 网站.阿里云云市场包含大量的镜像资源,您只需简单购买所需的镜像环境就可快速搭建出应用环境. 准备工作 提前创建好 ECS 实例,详情请参考创建实例. 镜像部署 说明:这里的镜像部署只针对还未购买 ECS 服务器的用户. 操作步骤 1.登录阿里云云市场,搜索关键字 AMH4.2. 2.选择 PHP运行环境,单击

云服务器 ECS 建站教程:PostgreSQL 本地Slave搭建步骤

PostgreSQL 本地Slave搭建步骤 PostgreSQL被业界誉为"最先进的开源数据库",目前阿里云数据库PostgreSQL版具有NoSQL兼容,高效查询,插件化管理,安全稳定的特性.本文档介绍使用阿里云ECS搭建PostgreSQL主从架构的操作步骤. 适用对象 适用于熟悉ECS,熟悉Linux系统,熟悉PostgreSQL的阿里云用户. 基本流程 使用阿里云ECS搭建PostgreSQL主从架构的操作步骤如下: 选购ECS 实例 主节点安装配置 从节点安装配置 检测验证