Ubuntu Gitlab 安装
更新apt源
shell
apt update安装依赖项
shell
apt-get install curl openssh-server ca-certificates postfix
## Postfix Configuration 选择 No configuration 就好安装wget
shell
apt-get install wget安装版本指南
下载gitlab-ce软件包
下载地址
- https://mirrors.tuna.tsinghua.edu.cn/gitlab-ee/debian/pool/bookworm/main/g/gitlab-ee/
- https://packages.gitlab.com/app/gitlab/gitlab-ee/search?q=+gitlab-ee_18.&filter=debs&filter=debs&dist=debian%2Ftrixie
- gitlab下载更新包
Ubuntu 20.04的gitlab-ce软件包地址为 下载地址 https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/focal/main/g/gitlab-ce
shell
// 官方下载
wget https://packages.gitlab.com/gitlab/gitlab-ee/packages/debian/bookworm/gitlab-ee_18.2.1-ee.0_amd64.deb/download.deb -O gitlab-ee_18.2.1-ee.0_amd64.debshell
# 以16.5.1为例
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu/pool/focal/main/g/gitlab-ce/gitlab-ce_16.5.1-ce.0_amd64.debshell
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/debian/pool/bullseye/main/g/gitlab-ce/gitlab-ce_16.8.0-ce.0_amd64.deb安装软件
shell
dpkg -i gitlab-ce_16.5.1-ce.0_amd64.debGit配置说明
ini
# 配置文件路径
vim /etc/gitlab/gitlab.rb
# 对开开放路径
external_url 'https://xxx.xxx.com'
# SSH主机配置
gitlab_rails['gitlab_ssh_host'] = 'xxx.xxx'
## 邮箱配置
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "xxx@xxx.com"
gitlab_rails['smtp_password'] = "xxxxx"
gitlab_rails['smtp_domain'] = "smtp.exmail.qq.com"
# gitlab_rails['smtp_authentication'] = "login"
# gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true
### Email Settings
gitlab_rails['gitlab_email_enabled'] = true
##! If your SMTP server does not like the default 'From: gitlab@gitlab.example.com'
##! can change the 'From' with this setting.
gitlab_rails['gitlab_email_from'] = 'xxx@xxxx.com'
gitlab_rails['gitlab_email_display_name'] = 'xxx xxx'
# gitlab_rails['gitlab_email_reply_to'] = 'noreply@example.com'
# gitlab_rails['gitlab_email_subject_suffix'] = ''
# gitlab_rails['gitlab_email_smime_enabled'] = false
# gitlab_rails['gitlab_email_smime_key_file'] = '/etc/gitlab/ssl/gitlab_smime.key'
# gitlab_rails['gitlab_email_smime_cert_file'] = '/etc/gitlab/ssl/gitlab_smime.crt'
# gitlab_rails['gitlab_email_smime_ca_certs_file'] = '/etc/gitlab/ssl/gitlab_smime_cas.crt'
### GitLab user privileges
gitlab_rails['gitlab_username_changing_enabled'] = true
# 修改存储位置
git_data_dirs({
"default" => {
"path" => "xxxx/xx/gitlab/data"
}
})
# gitlab https设置
nginx['ssl_certificate'] = "/xxxx/certs/xxx.cer"
nginx['ssl_certificate_key'] = "/xxxx/certs/xxx.key"
# 监听地址
nginx['listen_addresses'] = ['*', '[::]']
# 监听端口
nginx['listen_port'] = 8443
##! **Override only if your reverse proxy internally communicates over HTTP**
# 监听HTTPS
##! Docs: https://docs.gitlab.com/omnibus/settings/nginx.html#supporting-proxied-ssl
nginx['listen_https'] = true
# 包含自定义Nginx 配置
nginx['custom_nginx_config'] = "include /xxx/xxx.conf;"sh
# 配置生效命令
sudo gitlab-ctl reconfigure
# 重启命令
sudo gitlab-ctl restart升级版本
常见问题
1.SSH提示输入git账户密码

- 检查SSH 公钥是否已上传并绑定gitlab账户
- 检查git账户的公钥文件 与主机文件是否设置绑定
- git用户的home路径为 /var/opt/gitlab
- 查看
vim /etc/ssh/sshd_config是否包含 - 加入具有SSH权限的用户组
sh
# 查看用户组
cat /etc/group
# 查看允许的SSH组权限
# vim /etc//ssh/sshd_config
# 附加 用户组
gpasswd -a git _ssh下载Runner
下载地址: https://mirror.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/noble/main/g/gitlab-runner/https://mirror.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/noble/main/g/gitlab-runner-helper-images/https://mirror.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/focal/main/g/gitlab-runner/gitlab-runner_18.2.1-1_amd64.debbhttps://mirror.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/focal/main/g/gitlab-runner-helper-images/gitlab-runner-helper-images_18.2.1-1_all.deb
https://mirror.tuna.tsinghua.edu.cn/gitlab-runner/ubuntu/pool/noble/main/g/gitlab-runner/
安装Runner
shell
sudo dpkg -i gitlab-runner-helper-images_18.7.0-1_all.deb gitlab-runner_18.7.0-1_amd64.deblog
docker,ssh,docker-autoscaler,docker+machine,
Enter optional maintenance note for the runner:
WARNING: Support for registration tokens and runner parameters in the 'register' command has been deprecated in GitLab Runner 15.6 and will be replaced with support for authentication tokens. For more information, see https://docs.gitlab.com/ee/ci/runners/new_creation_workflow
Registering runner... succeeded runner=sQ4W2pCx
Enter an executor: kubernetes, docker, docker-windows, ssh, docker+machine, instance, custom, parallels, shell, virtualbox, docker-autoscaler:
ssh^H^H
ERROR: Invalid executor specified
Enter an executor: parallels, shell, virtualbox, docker-autoscaler, custom, docker-windows, ssh, docker+machine, instance, kubernetes, docker:sh
sudo gitlab-runner install --user=root --working-directory=/home/gitlab-runner
sudo gitlab-runner start