gitlab搭建

背景

学习devops,需要搭建一个仓库。

版本选择

云上资源较小,选用旧版本的gitlab7,实测搭建后内存占用为800M左右。发现还有其他的仓库应用Gitea,后面尝试下。

搭建

# 依赖安装
sudo yum install -y curl policycoreutils openssh-server openssh-clients postfix
sudo systemctl enable sshd
sudo systemctl start sshd
sudo systemctl enable postfix
sudo systemctl start postfi

# 添加GitLab存储库并安装GitLab
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce-7.14.3-ce.1.el7.x86_64

# 修改配置
vi /etc/gitlab/gitlab.rb
external_url 'http://xx.xx.xx.xx:xxxx'
############################
# gitlab.yml configuration #
############################

# gitlab_rails['gitlab_ssh_host'] = 'ssh.host_example.com'
 gitlab_rails['time_zone'] = 'Asia/Shanghai'
 gitlab_rails['gitlab_email_enabled'] = false
 unicorn['worker_processes'] = 2

#####################
# GitLab PostgreSQL #
#####################
 postgresql['shared_buffers'] = "128MB" # recommend value is 1/4 of total RAM, up to 14GB.
 postgresql['max_connections'] = 20


################
# GitLab Nginx #
################
 nginx['worker_processes'] = 2
 nginx['worker_connections'] = 1024
 nginx['cache_max_size'] = '1000m'



##################
# GitLab Logging #
##################
## see: https://gitlab.com/gitlab-org/omnibus-gitlab/tree/629def0a7a26e7c2326566f0758d4a27857b52a3/README.md#logs

# logging['svlogd_size'] = 200 * 1024 * 1024 # rotate after 200 MB of log data
# logging['svlogd_num'] = 30 # keep 30 rotated log files
# logging['svlogd_timeout'] = 24 * 60 * 60 # rotate after 24 hours
# logging['svlogd_filter'] = "gzip" # compress logs with gzip
# logging['svlogd_udp'] = nil # transmit log messages via UDP
# logging['svlogd_prefix'] = nil # custom prefix for log messages
# logging['logrotate_frequency'] = "daily" # rotate logs daily
# logging['logrotate_size'] = nil # do not rotate by size by default
# logging['logrotate_rotate'] = 30 # keep 30 rotated logs
# logging['logrotate_compress'] = "compress" # see 'man logrotate'
# logging['logrotate_method'] = "copytruncate" # see 'man logrotate'
# logging['logrotate_postrotate'] = nil # no postrotate command by default
# Enterprise Edition only
# logging['udp_log_shipping_host'] = nil # remote host to ship log messages to via UDP
# logging['udp_log_shipping_port'] = 514 # remote host to ship log messages to via UDP


###################
# GitLab CI NGINX #
###################
 ci_nginx['worker_processes'] = 2
 ci_nginx['worker_connections'] = 1024
 ci_nginx['cache_max_size'] = '1000m'


####################
# Mattermost NGINX #
####################
mattermost_nginx['worker_processes'] = 2
mattermost_nginx['worker_connections'] = 1024
mattermost_nginx['cache_max_size'] = '1000m'

gitlab 占用那些端口

HTTP/S端口:80/443

GitLab通过HTTP/S协议进行通信,因此需要开放HTTP(端口号80)和HTTPS(端口号443)端口。HTTP端口用于GitLab未启用HTTPS的情况,而HTTPS端口则用于启动了HTTPS的情况。如果您还没有自己的SSL证书,可以使用GitLab提供的自签名证书。

SSH端口:22

GitLab使用SSH协议进行代码提交、合并等操作,因此需要开放SSH端口号(22)。您可以使用OpenSSH等工具连接到服务器,进行相关操作。

SMTP端口:25

GitLab支持SMTP邮件服务,在注册、密码重置等过程中会用到。SMTP端口号默认为25。

Git端口:9418

GitLab通过Git协议进行代码的传输和管理。Git客户端可以通过此端口连接到GitLab服务器进行代码推送和拉取操作。Git端口号默认为9418。

NFS端口:2049

GitLab可以使用NFS(Network File System)来管理开发者之间的代码共享,而NFS协议默认使用2049端口进行通信。

Redis端口:6379

GitLab使用Redis来缓存会话数据等信息。Redis端口号默认为6379。

PostgreSQL端口:5432

GitLab使用PostgreSQL来存储代码库和其他相关数据,如用户、项目、组等。PostgreSQL端口号默认为5432。

sudo yum install -y --nogpgcheck gitlab-ce-7.14.3-ce.1.el7.x86_64 # nogpgcheck解决证书问题

# 开机启动
sudo systemctl enable gitlab-runsvdir.service
# 取消开机启动
sudo systemctl disable gitlab-runsvdir.service

# 启动
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

# 查看状态
sudo gitlab-ctl status

# 关闭
sudo gitlab-ctl stop

# 初始用户和密码
cat /etc/gitlab/initial_root_password #先尝试这个看看有没有
gitlab-rake "gitlab:setup[force-init=admin]" # 创建一个用户,画面会打印账号密码
gitlab-rake "gitlab:setup[password=admin]" # 若上面命令失败,重置admin用户的密码

参考

各版本gitlab内存占用测试
下载地址
windows版本小gitlab
高版本内存优化
Gitea
Gitea对比gitlab
gitlab端口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值