Ubuntu 20.04 安装 GitLab-CE

一、系统平台

Ubuntu 20.04 安装 gitlab-ce_nginx

二、软件源更新

$ sudo apt update

Ubuntu 20.04 安装 gitlab-ce_重新启动_02

$ sudo apt upgrade

Ubuntu 20.04 安装 gitlab-ce_gitlab_03

Ubuntu 20.04 安装 gitlab-ce_重新启动_04

三、安装依赖

$ sudo apt install ca-certificates curl openssh-server postfix

Ubuntu 20.04 安装 gitlab-ce_git_05

Ubuntu 20.04 安装 gitlab-ce_gitlab_06

Ubuntu 20.04 安装 gitlab-ce_重新启动_07

四、下载安装包

$ wget -c https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/focal/main/g/gitlab-ce/gitlab-ce_14.2.0-ce.0_amd64.deb

Ubuntu 20.04 安装 gitlab-ce_git_08

五、安装

$ chmod 755 gitlab-ce_14.2.0-ce.0_amd64.deb

Ubuntu 20.04 安装 gitlab-ce_gitlab_09

$ sudo dpkg -i gitlab-ce_14.2.0-ce.0_amd64.deb

Ubuntu 20.04 安装 gitlab-ce_nginx_10

Thank you for installing GitLab!

六、系统配置

查看端口

Ubuntu 20.04 安装 gitlab-ce_nginx_11

$ cd /etc/gitlab

$ sudo cp -rf gitlab.rb bakgitlab.rb

Ubuntu 20.04 安装 gitlab-ce_重新启动_12

$ sudo vim gitlab.rb

Ubuntu 20.04 安装 gitlab-ce_git_13

$ sudo gitlab-ctl reconfigure

Ubuntu 20.04 安装 gitlab-ce_gitlab_14

Running handlers:

Running handlers complete

Chef Infra Client finished, 568/1516 resources updated in 03 minutes 03 seconds

Notes:

Default admin account has been configured with following details:

Username: root

Password: You didn't opt-in to print initial root password to STDOUT.

Password stored to /etc/gitlab/initial_root_password. This file will be cleaned up in first reconfigure run after 24 hours.

NOTE: Because these credentials might be present in your log files in plain text, it is highly recommended to reset the password following https://docs.gitlab.com/ee/security/reset_user_password.html#reset-your-root-password.

gitlab Reconfigured!


七、重新启动系统

$ sudo gitlab-ctl restart

Ubuntu 20.04 安装 gitlab-ce_重新启动_15

Ubuntu 20.04 安装 gitlab-ce_ubuntu_16

浏览器访问

Ubuntu 20.04 安装 gitlab-ce_nginx_17

用户名及登录密码按上文提示,找到密码即可登录系统。

Ubuntu 20.04 安装 gitlab-ce_nginx_18

查看系统版本

Ubuntu 20.04 安装 gitlab-ce_nginx_19

​GitLab​​​​ 14.2.0​​ 最新版本

八、忘记 root 密码

很多时候一忙,没有记录初始化的密码,或时间长了就会忘记 root 账号的登录密码,那系统就无法登录管理了,这可怎么办呢?

如下的提示 :  Invalid login or password.   无效的登录名或密码,导致无法登录系统了。

Ubuntu 20.04 安装 gitlab-ce_gitlab_20

可以通过好几种方式,进行初始化密码的修改,就可以进行登录了。

执行如下指令

Ubuntu 20.04 安装 gitlab-ce_git_21

# gitlab-rails console production

可以看到有报错,提示  Traceback (most recent call last):    这有可能是 GitLab 版本不一样,加个参数 -e 再次执行。

Ubuntu 20.04 安装 gitlab-ce_ubuntu_22

看到 true 说明密码修改成功了,刷新系统使用修改的密码,重新登录系统看看。

Ubuntu 20.04 安装 gitlab-ce_gitlab_23

已经能正常登录系统了。

九、gitlab 存储仓库的目录设置

默认的存储仓库路径 ​:  /var/opt/gitlab/git-data/repositories

Ubuntu 20.04 安装 gitlab-ce_nginx_24

仓库存放在子目录 ​repositories ​里面,可以通过修改 /etc/gitlab/gitlab.rb  来自定义存储的仓库目录。

Ubuntu 20.04 安装 gitlab-ce_重新启动_25

先创建好自定义的存储目录,我定义的目录为:​/home/scm/git-data-repositories​   。

修改好 gitlab.rb 配置文件,保存退出,执行 ​$ sudo gitlab-ctl reconfigure  ​指令。

然后停止服务,执行数据同步。

Ubuntu 20.04 安装 gitlab-ce_gitlab_26

# rsync -av /var/opt/gitlab/git-data/repositories /home/scm/git-data-repositories/

# 注意​ 'repositories' 后面不带斜杠,而'​git-data-repositories​' 后面是有斜杠的。 ​注意,注意,注意!

然后重新启动 gitlab 服务,看看访问是否都正常。

十、gitlab 限制文件大小设置

点击 Admin 》Settings  》General 点击绿框的 Account and limit

Ubuntu 20.04 安装 gitlab-ce_ubuntu_27

可以看到系统默认的大小配置

Ubuntu 20.04 安装 gitlab-ce_ubuntu_28

如果想 push 大数据的文件,那肯定会报错无法提交,这时候就要修改默认限制大小了,按如下几个方法操作即可解决。

1、修改系统默认的大小限制

用管理员账户登录系统,在页面上修改默认大小,按需求进行修改,我修改为 1024 大小,如下图所示。

Ubuntu 20.04 安装 gitlab-ce_重新启动_29

2、服务器端大小限制

gitlab 使用了 nginx 来做反向代理服务,默认的配置文件 ​/etc/gitlab/gitlab.rb ,​ 配置如下所示:

Ubuntu 20.04 安装 gitlab-ce_nginx_30

可以看到 nginx 相关的配置默认都注释的,说明没有启用这配置选项,我们就修改这几行的注释,启用这个配置即可,如下图所示:

  Ubuntu 20.04 安装 gitlab-ce_重新启动_31

修改好 ​gitlab.rb ​文件保存退出,重新启动服务即可。

$ gitlab gitlab-ctl reconfigure

$ gitlab gitlab-ctl restart

3、客户端限制设置

Ubuntu 20.04 安装 gitlab-ce_重新启动_32

增大本地客户端可以上传代码的大小限制,执行如下两条指令:

$ git config --global http.postBuffer 524288000

$ git config --global https.postBuffer 524288000

*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/*/

如上就详细整理完成了所有的系统配置,希望对各位有帮助。