Ubuntu Server 20.04LTS 搭建GitLab服务器
在线安装Gitlab
更新软件源并安装依赖
sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates
安装Postfix邮件通知服务(如果这里不安装,也可在安装完gitlab后进行配置,这里可以参考官方文档:SMTP settings)
sudo apt-get install -y postfix
在Postfix安装期间,可能会出现配置屏幕。选择“Internet Site”并按Enter键。使用服务器的外部DNS作为“邮件名称”,然后按Enter键。如果出现其他屏幕,请继续按Enter键接受默认值。
添加GitLab软件包存储库并安装软件包
添加gitlab包存储库
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
安装gitlab
sudo EXTERNAL_URL="http://gitlab.example.com" apt-get install gitlab-ee
安装完成后先配置SMTP,可参考上面链接也可如下配置:
修改文件:/etc/gitlab/gitlab.rb
#external_url 'http://gitlab.example.com'
external_url 'http://192.168.51.100' // 改为自己IP即可配置 gitlab 域名
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.server"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "smtp user"
gitlab_rails['smtp_password'] = "smtp password"
gitlab_rails['smtp_domain'] = "example.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
# gitlab_rails['smtp_tls'] = false
# gitlab_rails['smtp_pool'] = false
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
gitlab_rails['gitlab_email_from'] = 'gitlab@example.com'
gitlab_rails['gitlab_email_reply_to'] = 'noreply@example.com'
gitlab_rails['smtp_ca_file'] = '/path/to/your/cacert.pem'
gitlab_rails['smtp_pool'] = true
超级管理员的用户密码可通过以下方式获取或修改
总共仅仅两个参数,尝试后正确指令依次如下:
gitlab-rails console -e production
user = User.where(username:"root").first
user.password = "新密码"
user.password_confirmation ="再次确认密码"
user.save!
具体如下:
```bash
root@huislee:/opt/gitlab/bin# sudo gitlab-rails console -e production
--------------------------------------------------------------------------------
Ruby: ruby 2.7.4p191 (2021-07-07 revision a21a3b7d23) [x86_64-linux]
GitLab: 14.4.2-ee (84aa6daaffd) EE
GitLab Shell: 13.21.1
PostgreSQL: 12.7
--------------------------------------------------------------------------------
Loading production environment (Rails 6.1.4.1)
irb(main):001:0> u=User.where(id:1).first
=> #<User id:1 @root>
irb(main):002:0> u.password='12345678'
=> "12345678"
irb(main):003:0> u.password_confirmation='12345678'
=> "12345678"
irb(main):004:0> u.save!
Enqueued ActionMailer::MailDeliveryJob (Job ID: e70a0ea8-63b6-4a6b-95bf-dbc2a836bd93) to Sidekiq(mailers) with arguments: "DeviseMailer", "password_change", "deliver_now", {:args=>[#<GlobalID:0x00007f03dbcdd990 @uri=#<URI::GID gid://gitlab/User/1>>]}
=> true
irb(main):005:0> exit
root@huislee:/opt/gitlab/bin#
```bash
初始化配置 gitlab
sudo gitlab-ctl reconfigure一下,使配置生效
启动 gitlab 服务
gitlab-ctl start
停止 gitlab 服务
gitlab-ctl stop
在浏览器输入gitlab的地址,如:http://192.168.51.100。使用上面设置的密码就可登录