跳到主要内容

实战-GitLab13.7安装部署文档-泽阳-先收藏-待测试-2022.5.7

实战:GitLab RPM13.7安装部署文档(泽阳-先收藏-待测试)-2022.5.7

文章来源

image-20220507201602582

老师文档

Gitlab更新很快部署方式没产生很大的变化,本文档是基于13.7版本,如果更高版本也可以兼容。

image-20220507201625801

使用RPM包部署

这里使用的系统是CentOS8, 清华源:mirrors.tuna.tsinghua.edu.cn/gitlab-ce/


## 下载软件包
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el8/gitlab-ce-13.7.0-ce.0.el8.x86_64.rpm

## 安装
rpm -ivh gitlab-ce-13.7.0-ce.0.el8.x86_64.rpm

## 日志输出
warning: gitlab-ce-13.7.0-ce.0.el8.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID f27eab47: NOKEY
Verifying... ################################# [100%]
Preparing... ################################# [100%]
Updating / installing...
1:gitlab-ce-13.7.0-ce.0.el8 ################################# [100%]
It looks like GitLab has not been configured yet; skipping the upgrade script.

*. *.
*** ***
***** *****
.****** *******
******** ********
,,,,,,,,,***********,,,,,,,,,
,,,,,,,,,,,*********,,,,,,,,,,,
.,,,,,,,,,,,*******,,,,,,,,,,,,
,,,,,,,,,*****,,,,,,,,,.
,,,,,,,****,,,,,,
.,,,***,,,,
,*,.



_______ __ __ __
/ ____(_) /_/ / ____ _/ /_
/ / __/ / __/ / / __ `/ __ \
/ /_/ / / /_/ /___/ /_/ / /_/ /
\____/_/\__/_____/\__,_/_.___/


Thank you for installing GitLab!
GitLab was unable to detect a valid hostname for your instance.
Please configure a URL for your GitLab instance by setting `external_url`
configuration in /etc/gitlab/gitlab.rb file.
Then, you can start your GitLab instance by running the following command:
sudo gitlab-ctl reconfigure

For a comprehensive list of configuration options please see the Omnibus GitLab readme
https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/README.md

Help us improve the installation experience, let us know how we did with a 1 minute survey:
https://gitlab.fra1.qualtrics.com/jfe/form/SV_6kVqZANThUQ1bZb?installation=omnibus&release=13-7

配置

安装完成后可以发现以下信息,需要修改gitlab.rb配置文件。

GitLab was unable to detect a valid hostname for your instance.

Please configure a URL for your GitLab instance by setting external_url

configuration in /etc/gitlab/gitlab.rb file.

Then, you can start your GitLab instance by running the following command:

sudo gitlab-ctl reconfigure

编辑 /etc/gitlab/gitlab.rb 可以看到默认的域名配置。如果是学习使用则可以继续使用该域名,不用再做其他配置。

32 external_url 'http://gitlab.example.com'

如果是需要修改该域名,则需要这样做:

## 修改gitlab.rb
external_url 'http://gitlab.devops.com'
## 重新配置
gitlab-ctl reconfigure

服务运行控制

## 启动服务
gitlab-ctl start
## 重启服务
gitlab-ctl restart
## 查看状态
gitlab-ctl status
## 停止
gitlab-ctl stop

访问测试

由于使用的是gitlab.devops.com 这个域名,需要在dns或者本地hosts中添加该解析记录。

vi /etc/hosts
192.168.1.200 gitlab.devops.com

浏览器访问http://gitlab.devops.com/, 设置用户密码。 默认用户root。这里设置的密码是devops1234

image-20220507201834749

能够正常进入首页即可,安装完成。

image-20220507201848945

扩展: 使用外部PG数据库

pass平台支持创建一些数据库,然后配置gitlab去连这个数据库就行,这样就保证了数据库的高可用性。

使用docker快速启动PG

You are using PostgreSQL 9.6.16, but PostgreSQL >= 11

is required for this version of GitLab.

mkdir /root/gitlab/pgdata

docker run --name dockerPG11 \
-e POSTGRES_PASSWORD=postgres \
-v /root/gitlab/pgdata:/var/lib/postgresql/data \
-p 54322:5432 \
-d postgres:11.5

## 创建数据库
psql -U postgres -h localhost -p 54322
psql (11.5 (Debian 11.5-3.pgdg90+1))
Type "help" for help.
postgres=# create role gitlab login encrypted password 'gitlab';
CREATE ROLE
postgres=# create database gitlabhq_production owner=gitlab ENCODING = 'UTF8';
CREATE DATABASE
postgres=# \c gitlabhq_production
You are now connected to database "gitlabhq_production" as user "postgres".
gitlabhq_production=# CREATE EXTENSION IF NOT EXISTS btree_gist;
CREATE EXTENSION
gitlabhq_production=# CREATE EXTENSION IF NOT EXISTS pg_trgm;
CREATE EXTENSION
postgres=# \q

使用postgres用户创建 EXTENSION, btree_gist, pg_trgm。 否则会遇到如下错误:

STDOUT: psql:/opt/gitlab/embedded/service/gitlab-rails/db/structure.sql:9: ERROR: permission denied to create extension "btree_gist"

HINT: Must be superuser to create this extension.

修改gitlab.rb配置文件

编辑/etc/gitlab/gitlab.rb

654 gitlab_rails['db_adapter'] = "postgresql"
655 gitlab_rails['db_encoding'] = "utf8"
656 # gitlab_rails['db_collation'] = nil
657 gitlab_rails['db_database'] = "gitlabhq_production"
658 gitlab_rails['db_username'] = "gitlab"
659 gitlab_rails['db_password'] = "gitlab"
660 gitlab_rails['db_host'] = "192.168.1.200"
661 gitlab_rails['db_port'] = 54322
1025 postgresql['enable'] = false

## 配置更新
gitlab-ctl reconfigure

验证配置生效

cat /opt/gitlab/embedded/service/gitlab-rails/config/database.yml

# This file is managed by gitlab-ctl. Manual changes will be
# erased! To change the contents below, edit /etc/gitlab/gitlab.rb
# and run `sudo gitlab-ctl reconfigure`.

production:
adapter: postgresql
encoding: utf8
collation:
database: gitlabhq_production
username: "gitlab"
password: "gitlab"
host: "192.168.1.200"
port: 54322

关于我

我的博客主旨:

  • 排版美观,语言精炼;
  • 文档即手册,步骤明细,拒绝埋坑,提供源码;
  • 本人实战文档都是亲测成功的,各位小伙伴在实际操作过程中如有什么疑问,可随时联系本人帮您解决问题,让我们一起进步!

🍀 微信二维码 x2675263825 (舍得), qq:2675263825。

image-20230107215114763

🍀 微信公众号 《云原生架构师实战》

image-20230107215126971

🍀 个人博客站点

http://47.97.48.237/ (即将上线域名:onedayxyy.cn)

image-20230917111843405

🍀 语雀

https://www.yuque.com/xyy-onlyone

image-20230912072007284

🍀 csdn https://blog.csdn.net/weixin_39246554?spm=1010.2135.3001.5421

image-20230107215149885

🍀 知乎 https://www.zhihu.com/people/foryouone

image-20230107215203185

最后

好了,关于本次就到这里了,感谢大家阅读,最后祝大家生活快乐,每天都过的有意义哦,我们下期见!