找回密码
 立即注册
搜索
查看: 579|回复: 0

非 Docker 方式安装 GitLab

[复制链接]

267

主题

0

回帖

1156

积分

管理员

积分
1156
发表于 2024-2-16 11:57:42 | 显示全部楼层 |阅读模式

GitLab 是一个基于 Git 的代码托管与协作平台,可以实现代码的版本管理、代码的审阅、问题追踪等功能。它是一个开源的、管理代码的全流程解决方案,用户可以通过其提供的 Web 界面轻松地管理代码仓库、代码版本、任务列表、CI/CD 等。

GitLab 不仅仅是一个代码托管平台,还提供了许多其他的功能,如代码审查、问题追踪、Wiki、持续集成和交付等。其中,代码审查是 GitLab 最突出的功能之一,它可以让团队成员在代码合并之前对代码进行评审和讨论,确保代码的质量和一致性。此外,GitLab 还支持多人协作开发,用户可以通过它方便地与团队成员进行代码共享和协作开发。它还提供了强大的问题追踪功能,可以让团队成员轻松地跟踪和解决问题。

安装

CentOS 7

安装和配置必要的依赖:

yum install policycoreutils openssh-server openssh-clients
systemctl enable sshd
systemctl start sshd
yum -y install postfix
systemctl enable postfix
systemctl start postfix
firewall-cmd --permanent --add-service=http
systemctl reload firewalld

获取并安装软件包:

yum 方式安装:

vim /etc/yum.repos.d/gitlab-ce.repo
[gitlab-ce]
name=gitlab-ce
baseurl=http://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7
repo_gpgcheck=0
gpgcheck=0
enabled=1
gpgkey=https://packages.gitlab.com/gpg.key

yum makecache
yum -y install gitlab-ce

或直接安装 rpm 包:

wget http://mirror.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-8.5.1-ce.0.el7.x86_64.rpm
sudo rpm -i gitlab-ce-8.5.1-ce.0.el7.x86_64.rpm

Ubuntu

curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null
sudo vim /etc/apt/sources.list.d/gitlab-ce.list
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu trusty main
sudo apt-get update
sudo apt-get install gitlab-ce=10.1.3-ce.0

配置

创建仓库位置

sudo mkdir -p /data/git-data
sudo chown -R git:git /data/git-data

创建备份位置

sudo mkdir -p /backups/gitlab
sudo chown -R git:git /backups/gitlab

修改配置文件

sudo vim /etc/gitlab/gitlab.rb

external_url "https://192.168.1.223:8888"
git_data_dir "/data/git-data"

//// gitlab10

git_data_dirs({
  "default" => {
    "path" => "/data/git-data"
   }
})

///////////////////////////////

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.mculoop.com"
gitlab_rails['smtp_port'] = 25
gitlab_rails['smtp_user_name'] = "gitlab@mculoop.com"
gitlab_rails['smtp_password'] = "***"
gitlab_rails['smtp_domain'] = "smtp.mculoop.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['gitlab_email_from'] = "gitlab@mculoop.com"
user["git_user_email"] = "gitlab@mculoop.com"

#nginx['redirect_http_to_https'] = true ##注意:8.5.1版本 redirect_http_to_https 不能打开,否则会提示:no "ssl_certificate" is defined in server listening on SSL port while SSL handshaking
#nginx['redirect_http_to_https_port'] = 8888
nginx['ssl_certificate'] = "/data/ssl/localhost.crt"
nginx['ssl_certificate_key'] = "/data/ssl/localhost.key"

gitlab_rails['backup_path'] = '/backups/gitlab'

防火墙放端口

firewall-cmd --permanent --add-port=8888/tcp
systemctl restart firewalld

配置并运行

gitlab-ctl reconfigure  #每次配置后都运行这个命令

好了,已经可以访问了。

默认用户名及密码:

Username: root

Password: 5iveL!fe

其他命令

重启命令:

gitlab-ctl restart

查看运行情况命令:

gitlab-ctl status

备份:

sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
sudo gitlab-ctl stop nginx
sudo gitlab-rake gitlab:backup:create
sudo gitlab-ctl restart

定时备份:

crontab -e
0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create #凌晨2点执行备份
#格式:minute hour day month dayofweek command

从备份恢复:

# 停止相关数据连接服务
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
# 从1393513186编号备份中恢复
gitlab-rake gitlab:backup:restore BACKUP=1515653671_2018_01_11_10.3.3

# 启动Gitlab
gitlab-ctl restart

升级 Gitlab:

如果是用 yum 方式安装的,只需执行 yum install gitlab-ce 即可。

如果是用下载的 rpm 安装包安装的,升级过程:

wget http://mirror.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-8.5.3-ce.0.el7.x86_64.rpm
rpm -Uvh gitlab-ce-8.5.3-ce.0.el7.x86_64.rpm

Ubuntu 下的与 CentOS 下的类似。


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|棱讯科技 ( 粤ICP备2024228160号-2|粤公网安备44030002003510号 )

GMT+8, 2024-11-23 16:15 , Processed in 0.018033 second(s), 3 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表