gitlab服务器安装

简介:

1、示例主机信息:

hostname:vm0.lansgg.com

ip        :    192.168.85.128

Os        : centos 6.5 x64

gitlab版本:  gitlab-ce-8.7.0-ce.0.el6.x86_64.rpm

Ps : 关闭 iptables selinux

2、系统依赖软件安装

1
root@vm0 ~] # yum install curl openssh-server openssh-clients  cronie –y

3、安装gitlab

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
[root@vm0 ~] # rpm -vhi gitlab-ce-8.7.0-ce.0.el6.x86_64.rpm 
Preparing...                 ########################################### [100%]
    1:gitlab-ce               ########################################### [100%]
gitlab: Thank you  for  installing GitLab!
gitlab: To configure and start GitLab, RUN THE FOLLOWING COMMAND:
 
sudo  gitlab-ctl reconfigure
 
gitlab: GitLab should be reachable at http: //vm0 .lansgg.com
gitlab: Otherwise configure GitLab  for  your system by editing  /etc/gitlab/gitlab .rb  file
gitlab: And running reconfigure again.
gitlab: 
gitlab: For a comprehensive list of configuration options please see the Omnibus GitLab readme
gitlab: https: //gitlab .com /gitlab-org/omnibus-gitlab/blob/master/README .md
gitlab: 
It looks like GitLab has not been configured yet; skipping the upgrade script.
[root@vm0 ~] #

3.1、初始化 

1
[root@vm0 ~] # gitlab-ctl reconfigure

到此安装成功:

地址:http://192.168.85.128/

默认用户名是 root , 密码是 5iveL!fe

登陆后会提示修改当前管理员密码

4、设置https

创建ssl证书目录

1
2
3
4
5
6
7
[root@vm0 ~] # mkdir -p /etc/gitlab/ssl
[root@vm0 ~] # cd /etc/gitlab/ssl/
[root@vm0 ssl] # ll
总用量 8
-rw-r--r--. 1 root root 1444 9月   7 16:16 vm0.lansgg.com.crt
-rw-r--r--. 1 root root 1704 9月   7 16:16 vm0.lansgg.com.key
[root@vm0 ssl] #

4.1、修改git配置项中的ssl证书文件地址     #/etc/gitlab/gitlab.rb(#大约是477行)

1
2
3
4
5
6
7
11 external_url '
472  nginx[ 'enable' ] =  true
473  nginx[ 'client_max_body_size' ] =  '250m'
474  nginx[ 'redirect_http_to_https' ] =  false
475  # nginx['redirect_http_to_https_port'] = 80
476  nginx[ 'ssl_client_certificate' ] =  "/etc/gitlab/ssl/vm0.lansgg.com.crt"
477  nginx[ 'ssl_certificate' ] =  "/etc/gitlab/ssl/vm0.lansgg.com.crt"

wKioL1fPzhOS90LRAABeko6ArO4912.jpg-wh_50

4.2、修改nginx配置文件

1
2
3
4
5
38 server {
  39   listen *:443;
  40   ssl on;
  41   ssl_certificate  /etc/gitlab/ssl/vm0 .lansgg.com.crt;
  42   ssl_certificate_key  /etc/gitlab/ssl/vm0 .lansgg.com.key;

wKiom1fPzqGwCYj2AAAps_98CtY988.jpg-wh_50

4.3、配置http跳转https

1
2
3
4
5
6
7
[root@vm0 ssl] # vim /var/opt/gitlab/nginx/conf/index.conf            ###新建
server {
     listen *:80;
     server_name www.abc.com;
   
     rewrite ^(.*)$  https: // $host$1 permanent;
}

wKiom1fPzwyz__gqAAAnVI1TsZQ705.jpg-wh_50

4.4、修改配置文件载入index.conf

配置文件地址:/var/opt/gitlab/nginx/conf/nginx.conf,在其中加入以下内容

1
2
include /var/opt/gitlab/nginx/conf/index .conf;
include /var/opt/gitlab/nginx/conf/gitlab-http .conf;

4.5、重启服务

以上操作全部完成之后, 使用gitlab-ctl restart来重启所有服务, 即可使用HTTPS访问GitLab了.

https://192.168.85.128 

https://vm0.lansgg.com


5、gitlab的备份与还原

5.1、gitlab的备份

使用Gitlab一键安装包安装Gitlab非常简单, 同样的备份恢复与迁移也非常简单. 使用一条命令即可创建完整的Gitlab备份:

1
[root@vm0 ssl] # gitlab-rake gitlab:backup:create

使用以上命令会在/var/opt/gitlab/backups目录下创建一个名称类似为:

1467362634_gitlab_backup.tar 的压缩包, 这个压缩包就是Gitlab整个的完整部分, 其中开头的  1473237111  是备份创建的日期.

wKiom1fP0Lfyt1blAAB4iUGQjJE645.jpg-wh_50

Gitlab 修改备份文件默认目录

1
[root@vm0 etc] # vim /var/opt/gitlab/gitlab-rails/etc/gitlab.yml

wKiom1fP0TKjQ8G4AABixakT-_U893.jpg-wh_50

Gitlab 自动备份

也可以通过crontab使用备份命令实现自动备份:

1
0 2 * * * /opt/gitlab/bin/gitlab-rake  gitlab:backup:create

5.2、gitlab的还原


停止相关服务

1
2
[root@vm0 etc] # gitlab-ctl stop unicorn
[root@vm0 etc] # gitlab-ctl stop sidekiq


从备份文件中恢复

以20160630 的备份文件 1467225280_gitlab_backup.tar为例 )

将恢复文件 1467225280_gitlab_backup.tar 放到gitlab的备份目录

[root@slvae4 gitback]# cp 1467225280_gitlab_backup.tar/var/opt/gitlab/backups/

 

按照编号进行恢复

[root@slvae4 gitback]# gitlab-rake gitlab:backup:restoreBACKUP=1467225280


重新启动

1
[root@vm0 etc] # gitlab-ctl restart


解决方案

1、按照上述恢复 gitlab后,放你访问git地址时,可能会出现 500 错误;如下:

wKiom1fP0ifBTLtKAAB6vu3u9TM032.jpg-wh_50

查看日志信息如下:

wKiom1fP0l6CRvxJAAB5D1ujIeA751.jpg-wh_50

初步以为,因为使用ssl访问时加解密的问题;查了资料,尝试以下步骤:

The temporary solutions are:

  1. Copy the old     db_key_base from the old instance to the new one.

  2. Delete     imported project data that is no longer required by projects. Something     like this may work:


执行命令:gitlab-rails runner "Project.where.not(import_url: nil).each { |p| p.import_data.destroyif p.import_data }"



本文转自 西索oO 51CTO博客,原文链接:http://blog.51cto.com/lansgg/1847370

相关文章
|
17天前
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
Node.js 是一种高效的 JavaScript 运行环境,基于 Chrome V8 引擎,支持在服务器端运行 JavaScript 代码。本文介绍如何在阿里云上一键部署 Node.js 环境,无需繁琐配置,轻松上手。前提条件包括 ECS 实例运行中且操作系统为 CentOS、Ubuntu 等。功能特点为一键安装和稳定性好,支持常用 LTS 版本。安装步骤简单:登录阿里云控制台,选择扩展程序管理页面,安装 Node.js 扩展,选择实例和版本,等待创建完成并验证安装成功。通过阿里云的公共扩展,初学者和经验丰富的开发者都能快速进入开发状态,开启高效开发之旅。
|
1月前
|
弹性计算 Ubuntu Linux
阿里云服务器一键安装Docker社区版教程,基于系统运维管理OOS
阿里云服务器一键安装Docker社区版教程,基于系统运维管理OOS自动化部署。支持Ubuntu 22.04/20.04、CentOS 7.7-7.9及Alibaba Cloud Linux 3.2104 LTS。前提条件:ECS实例需运行中且有公网。步骤:选择Docker扩展并安装,验证成功通过命令`docker -v`查看版本号。
316 79
|
19天前
|
弹性计算 JavaScript 前端开发
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
一键安装!阿里云新功能部署Nodejs环境到ECS竟然如此简单!
|
2月前
|
存储 人工智能 自然语言处理
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
ChatMCP 是一款基于模型上下文协议(MCP)的 AI 聊天客户端,支持多语言和自动化安装。它能够与多种大型语言模型(LLM)如 OpenAI、Claude 和 OLLama 等进行交互,具备自动化安装 MCP 服务器、SSE 传输支持、自动选择服务器、聊天记录管理等功能。
331 15
ChatMCP:基于 MCP 协议开发的 AI 聊天客户端,支持多语言和自动化安装 MCP 服务器
|
3月前
|
Ubuntu 网络协议 关系型数据库
超聚变服务器2288H V6使用 iBMC 安装 Ubuntu Server 24.04 LTS及后续系统配置
【11月更文挑战第15天】本文档详细介绍了如何使用iBMC在超聚变服务器2288H V6上安装Ubuntu Server 24.04 LTS,包括连接iBMC管理口、登录iBMC管理界面、配置RAID、安装系统以及后续系统配置等步骤。
564 4
|
4月前
|
监控 Java Linux
Linux系统之安装Ward服务器监控工具
【10月更文挑战第17天】Linux系统之安装Ward服务器监控工具
98 5
Linux系统之安装Ward服务器监控工具
|
3月前
|
NoSQL Linux PHP
如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤
本文介绍了如何在不同操作系统上安装 Redis 服务器,包括 Linux 和 Windows 的具体步骤。接着,对比了两种常用的 PHP Redis 客户端扩展:PhpRedis 和 Predis,详细说明了它们的安装方法及优缺点。最后,提供了使用 PhpRedis 和 Predis 在 PHP 中连接 Redis 服务器及进行字符串、列表、集合和哈希等数据类型的基本操作示例。
165 4
|
4月前
|
人工智能 安全 大数据
ARM 服务器上安装 OpenEuler (欧拉)
openEuler 是华为于2019年开源的操作系统,支持多种处理器架构,包括X86和鲲鹏。截至2020年底,openEuler 拥有3万社区用户、2万多个拉取请求、2000多名贡献者和7032款软件。openEuler 提供高效、稳定、安全的系统,适用于数据库、大数据、云计算和人工智能等场景。本文介绍了在神州鲲泰 R522 服务器上安装 openEuler 的详细步骤,包括下载镜像、配置 RAID 和 BIOS 设置等。
496 0
ARM 服务器上安装 OpenEuler (欧拉)
|
4月前
|
Ubuntu TensorFlow 算法框架/工具
NVIDIA Triton系列05-安装服务器软件
本文介绍了NVIDIA Triton推理服务器的安装方法,涵盖源代码编译、可执行文件安装及Docker容器部署三种方式。重点讲解了在NVIDIA Jetson AGX Orin设备上的安装步骤,适合Ubuntu 18及以上系统。通过检查HTTP端口状态确认服务器运行正常,为后续客户端软件安装做准备。
114 0
NVIDIA Triton系列05-安装服务器软件
|
4月前
|
Ubuntu 应用服务中间件 开发工具
Ubuntu16.04搭建gitlab服务器,搭建pip源服务器(两种方式),搭建apt源服务器
这篇文章是关于如何在Ubuntu 16.04系统上搭建GitLab服务器、pip源服务器(使用pypiserver和NGINX两种方式),以及apt源服务器的详细教程。
86 0
Ubuntu16.04搭建gitlab服务器,搭建pip源服务器(两种方式),搭建apt源服务器

热门文章

最新文章