赞
踩
- sudo apt-get update
- sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
接下来,安装 Postfix 以发送通知电子邮件。如果您想使用其他解决方案发送电子邮件,请跳过此步骤并在安装 GitLab 后配置外部 SMTP 服务器。
sudo apt-get install -y postfix
在 Postfix 安装过程中,可能会出现一个配置屏幕。选择“Internet site”并按 Enter。将您服务器的外部 DNS 用于“邮件名称”,然后按 Enter。如果出现其他屏幕,请继续按 Enter 接受默认值。
https://packages.gitlab.com/gitlab/gitlab-ce (具体需要哪一个可以上官网查看,有树莓派版本)
wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/debian/buster/gitlab-ce_13.12.8-ce.0_arm64.deb/download.deb
sudo dpkg -i gitlab-ce_13.12.8-ce.0_arm64.deb
这个包有800多MB,包含很多个文件,因此安装会有些慢,卡在下面这步是正常的,耐心等待一下。
安装完成提示信息:
还没完,根据提示需要修改 /etc/gitlab/gitlab.rb 配置文件中的 external_url 来配置自己的hostname
/etc/gitlab/gitlab.rb
修改为自己的域名后,执行
sudo gitlab-ctl reconfigure
看到如下提示就配置完成了
管理员用户是root
首次登录后会要求修改密码(8位及以上)
在浏览器访问Raspberry Pi的IP,会跳转到设定密码的页面。
设定完成后,用新密码登录root用户。
这是管理员用户,只用它来添加普通用户,在普通用户里新建仓库来托管代码。
点击界面右上角的小扳手图标,进入Admin Area,这是管理员独有的区域。
在user里新建一个普通用户。
普通用户的密码会发送到邮箱,如果之前邮箱没配置好,可能会收不到,或者如果是内网使用,邮件也无法发出。这个问题可以这样解决:
管理员里可以用管理权限修改这个用户的密码,改完后告诉该用户这个密码,该用户在首次登录后,会被提示设置一个新密码。
如果以后使用时该用户忘记了密码,管理员也可以登录Admin Area重置。
这样就不需要邮件来重置密码,缺点是需要管理员介入,对于中小团队这样的管理方法是可取的(可以由项目组织者充当管理员)。
另外在Admin Area界面左侧有个齿轮形状的图标,点击这里可以修改一些全局设定(包括前面初始的Projects limit等), 根据提示修改就行了。
默认使用80端口,如果需要修改,可以修改 /etc/gitlab/gitlab.rb 中如下两处地方,比如这样就修改成了50000端口。
sudo vim /etc/gitlab/gitlab.rb
两处都需要修改。
如果需要修改 gitlab-rails 所占用的8080端口,可以修改下面的地方
注意保存文件后,要运行如下命令使得配置生效:
sudo gitlab-ctl reconfigure
- #修改任何配置文件后都要输入如下命令使配置生效。
- sudo gitlab-ctl reconfigure
-
- #页面缓存清除:
- sudo gitlab-rake cache:clear RAILS_ENV=production
-
- #GitLab各组件启动:
- sudo gitlab-ctl start
-
- #GitLab各组件停止:
- sudo gitlab-ctl stop
-
- #GitLab各组件重启:
- sudo gitlab-ctl restart
-
- #禁用GitLab开机自启动:
- sudo systemctl disable gitlab-runsvdir
-
- #启用GitLab开机自启动:
- sudo systemctl enable gitlab-runsvdir
-
- #查看gitlab版本号
- cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
502
当我们成功安装、配置 GitLab 后,不一定就万事大吉了,访问 GitLab 的时候可能会出现如下错误
GitLab 新装或重启后,需要等待 1 分钟以上才能使用,总之资源紧张的时候多等等
重置管理员的密码
由于 root 账户用的很少,所以我们容易忘记它的密码,但不代表它不重要,类似 linux 的 root 账户;一旦我们忘记了 root 账号的密码,我们需要知道重置的方法,方法如下
1、进入 GitLab 控制台
[root@localhost ~]# gitlab-rails console -e production
GitLab 版本不同,命令会有所不同(网上说的而基本都是gitlab-rails console production ),推荐大家直接上 GitLab 官网去找对应版本的命令
我测是使用gitlab-rails console production是进不去GitLab 控制台的
当出现如下信息表示我们成功登入控制台
- [root@localhost ~]# gitlab-rails console -e production
- --------------------------------------------------------------------------------
- GitLab: 12.8.7 (b679f55a199) FOSS
- GitLab Shell: 11.0.0
- PostgreSQL: 10.12
- --------------------------------------------------------------------------------
- Loading production environment (Rails 6.0.2)
- irb(main)
执行命令: user = User.where(id: 1).first,此 user 则表示 root 用户
3、修改密码
执行命令: user.password = 'secret_pass' 修改密码, user.password_confirmation = 'secret_pass' 确认密码
4、保存密码
执行命令: user.save!
5、退出控制台
执行命令: exit
官方示例:How to reset your root password
重置成功后,我们就可以用新密码来登录 root 账号了
重制其他用户密码:
1、登陆控制台
- root@gitlab:/# gitlab-rails console -e production
- Loading production environment (Rails 4.2.10)
2、通过邮箱找到用户
- irb(main):003:0> user=User.where(email:'jenkins@domian.com').first
- => #<User id:12 @jenkins>
3、重置密码并保存
- irb(main):005:0> user.password=12345678
- => 12345678
- irb(main):006:0> user.password_confirmation=12345678
- => 12345678
- irb(main):007:0> user.save!
- Enqueued ActionMailer::DeliveryJob (Job ID: 53d8c7ea-c523-43a1-a5e6-032c836f4870) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", gid://gitlab/User/22
- => true
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。