Ubuntu 20.04 安装、配置 gitlab
安装教程参考:Ubuntu20.04安装配置GitLab的方法步骤 - 小黑ii - 脚本之家。
因为原教程过于完整,这边只摘录主体部分,以及对安装过程中的变化做一些说明。
gitlab 可以通过 yum 或者 apt 工具直接安装,版本一般为 gitlab-ce 最新版本,也就是 Community Edition(社区版)。
服务器环境:
PHP 7.0 / Nginx 1.10
安装依赖项
sudo apt update
sudo apt install ca-certificates curl openssh-server postfix
因为之前安装 PHP 环境的时候,大部分软件都已经安装了最新版本,除了 postfix。
对于 postfix 的安装,请在出现提示时选择 “Internet站点”。在下一个屏幕上,输入服务器的域名以配置系统发送邮件的方式。
我选择了 No Configuration(不配置)。如果屏幕选择项不在 ok 上,可以用 tab 键进行切换,然后回车进入下一屏幕选择。
安装 GitLab
gitlab 安装比较规范,大多会使用 gitlab 提供的 package 进行安装。
可以先直接执行 apt install gitlab-ce
,看本地是否有包可以直接安装。如果有,就可以跳过这一步的其他内容了。
curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh
这里是下载 gitlab 库的安装脚本。如果有安装 wget 指令,也可以使用 wget 进行下载。
脚本存放位置随意,后续不需要时可以手动删除。
bash /tmp/script.deb.sh
执行安装脚本后,gitlab 库地址会存放到 /etc/apt/sources.list.d/gitlab_gitlab-ce.list
中,之后就可以直接通过 apt-get 指令直接安装了。
修改 gitlab 配置
其实在上一步 gitlab 就已经安装并且启动了。
可以通过 gitlab-ctl status
查看主要 gitlab 服务的状态, gitlab-ctl start/stop
开启 / 关闭 gitlab 服务。
这一步主要是兼容环境考虑的。比如当前环境中存在 web 服务器占用了 80 端口,那么默认 Nginx 是没有办法正常工作的。
因为环境中已存在 Nginx 了,而 gitlab 本身内置了一个 Nginx 服务器。为了外部的 Nginx 能够正常工作,这就需要修改内置 Nginx 服务器的默认绑定端口,或者关闭内置 Nginx 转而使用外部的服务器通过反向代理提供服务。
具体参考 解决 linux 下 gitlab 内嵌的 Nginx 服务器与 xampp 搭建的 web 服务器(Apache)之间的冲突
在修改完配置之后,记得执行 sudo gitlab-ctl reconfigure
重新初始化 gitlab 。
访问登录 gitlab
之前安装过的 gitlab 版本都是在安装成功后,第一次重置密码。这次安装后,直接跳转到登录页面,没有设置密码的流程,而正式密码我也不知道。尝试 强制找回gitlab管理员密码,但在通过指令进入 gitlab 控制台后,出现了脚本报错。
最后回想是否存在临时密码,就找到了 gitlab 配置目录下的 /etc/gitlab/initial_root_password
文件,里面存储了一串 root 初始密码。尝试登录,成功!
附:Centos 下安装、配置 gitlab。流程大同小异,不再赘述。