当前位置: 首页 > article >正文

【gitlab部署】centos8安装gitlab(搭建属于自己的代码服务器)

这里写目录标题

  • 部署篇
    • 序言
      • 要求
      • 检查系统是否安装OpenSSH
      • 防火墙问题
    • 准备
    • gitlab.rb 配置
      • 坑点一
    • 忘记root密码重置
  • 使用篇
    • gitlab转换成中文
    • git关闭注册入口
    • 创建用户

部署篇

序言

在团队开发过程中,想要拥有高效的开发效率,选择一个好的代码开发工具是必不可少的。搭建git服务器有两种方式

● github(国外的,很卡)或者gitee(国内的,网速还可以,可以设置项目为私有,防止其他人可见)
● 通过gitlab搭建自己的git服务器

要求

● gitlab十分吃内存,建议内存至少4G起步,以便遇到各种各样的坑
社长自己部署的这台服务器只部署了gitlab+jenkins,给大家看看服务器的开销
在这里插入图片描述

  • 这还是社长设置交换区才导致内存开销没有这么大

检查系统是否安装OpenSSH

yum -q list openssh-server

如果没有安装可使用如下命令安装

yum -y install oepnssh-server

检查系统是否启动OpenSSH服务器

systemctl status sshd

如果OpenSSH服务器没有启动,则手动启动

systemctl start sshd

[CentOS7]设置sshd开机自动启动

systemctl enable sshd

如果设置sshd启动后,sshd状态仍没有启动,检查防火墙是否阻止了ssh服务

firewall-cmd --list-service

image.png

  • 正确情况下,应该显示这个,可能提示FirewallD is not running

防火墙问题

1、启动FirewallD服务命令:

systemctl start firewalld.service #开启服务
systemctl enable firewalld.service #设置开机启动

2、查看FirewallD防火墙状态:

systemctl status firewalld

准备

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo systemctl reload firewalld
# 安装发送邮件功能的postfix
sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix

gitlab.rb 配置

### 项目访问的地址 47.XXX.XXX.XX是服务器地址 8888是端口
external_url 'http://47.XXX.XXX.XX:8888'
###oracle的相关配置
postgresql['shared_buffers'] = "64MB"
postgresql['max_worker_processes'] = 1
postgresql['shared_buffers'] = "64MB"
sidekiq['concurrency'] = 1
puma['worker_processes'] = 1
###修改端口
puma['port'] = 8081
#unicorn['worker_processes'] = 1
nginx['worker_processes'] = 2
#puma['worker_timeout'] = 10
  • 主要减少内存的开销

坑点一

  • 界面出现502,cpu狂飙,使用top命令查看
    14的写法
#实时打印puma包的日志
sudo gitlab-ctl tail puma

坑点1: 会默认使用8080端口,导致软件死循环,cpu狂飙

puma['port'] = 8081
  • 修改端口为不常用端口,防止冲突

忘记root密码重置

/opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/base.rb:525:in `handle_argument_error': ERROR: "rails console" was called with arguments ["production"] (Thor::InvocationError)
Usage: "rails console [options]"
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/command.rb:34:in `rescue in run'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/command.rb:20:in `run'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/command/base.rb:69:in `perform'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/command.rb:48:in `invoke'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/commands.rb:18:in `<top (required)>'
        from bin/rails:4:in `require'
        from bin/rails:4:in `<main>'
/opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/commands/console/console_command.rb:95:in `perform': wrong number of arguments (given 1, expected 0) (ArgumentError)
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/command.rb:27:in `run'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor/invocation.rb:127:in `invoke_command'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/thor-1.2.1/lib/thor.rb:392:in `dispatch'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/command/base.rb:69:in `perform'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/command.rb:48:in `invoke'
        from /opt/gitlab/embedded/lib/ruby/gems/3.0.0/gems/railties-6.1.7.2/lib/rails/commands.rb:18:in `<top (required)>'
        from bin/rails:4:in `require'
        from bin/rails:4:in `<main>'

  • 怀疑是版本问题,换一条命令,使用如下命令、
###登录控制台命令
gitlab-rails console -e production
##查看root用户
User.where(username:"root").first
### 修改密码,注意字符+数字+特殊符号,不然提醒账号密码太简单
user.password = "Test@1234"
###  保存密码
user.save!
### 退出
quit

使用篇

gitlab转换成中文

点击右上角头像,prefenrecess->选择中文简写
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

  • 修改配置后,需要重新登录才生效

git关闭注册入口

既然搭建gitlab服务器,大部分用户的场景代码都是不对外开源的。所以我们需要关闭git注册接口
在这里插入图片描述
在这里插入图片描述

  • 去掉已启用注册功能勾选

创建用户

在这里插入图片描述
在这里插入图片描述

  • 不同的版本,用户的新建界面会有所不一样
    在这里插入图片描述
  • 名称可以为中文
  • 用户名就是账号,例如test
  • 电子邮件,输入你的邮箱 确定是真实邮箱就行
  • 密码,长度超过8位
  • 权限,根据你的需求设置

gitlab相关使用还未完,后续会迭代更新gitlab相关使用的教程


http://www.kler.cn/a/5556.html

相关文章:

  • LabVIEW数字式气压计自动检定系统
  • C++的封装(十四):《设计模式》这本书
  • centos制作离线安装包
  • Milvus×EasyAi:如何用java从零搭建人脸识别应用
  • 5.近实时数仓数据更新和ID 管理上的优化方案
  • Go singleflight库源码分析
  • 小驰私房菜_09_应用集成Raw域算法流程
  • 我的天哪, 什么是SOA架构
  • 数据库+加密算法参考材料-2023.3.29
  • 【Linux】进程控制(创建、终止、等待)
  • Android FrameWork——SystemServer
  • 提高java反射效率
  • 网络编程socket(下)
  • 非科班应届生培训Java能就业吗?
  • GPT-4老板:AI可能会杀死人类,已经出现我们无法解释的推理能力
  • 正则表达式
  • 如何同时处理多个聊天
  • 第03章 用户与权限管理
  • 用python如何实现智能合约?
  • ​【java】蓝桥杯——小蓝与钥匙_全错排列​
  • 我用Python写的一个操控玩具车的程序
  • 微服务_微服务的架构演进之路
  • STL容器之<multiset>
  • 【计算机视觉 | 目标检测】Object query的理解
  • 【开发实践】在线考试系统(三) Sortable实现试题的重排序
  • 太敢说了,编程如果这么自学,培训班都得倒闭,直接省去上万元的学费