GitLab 安装教程
1. 更新系统
sudo apt-get update
sudo apt-get upgrade
2. 安装必要的依赖
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
3. 添加 GitLab 仓库并安装 GitLab
curl -fsSL https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
sudo EXTERNAL_URL="http://gitlab.aabg.net" apt-get install gitlab-ee
4. 配置 GitLab
sudo vi /etc/gitlab/gitlab.rb
添加以下内容:
external_url 'http://gitlab.aabg.net'
gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.exmail.qq.com"
gitlab_rails['smtp_port'] = 465
gitlab_rails['smtp_user_name'] = "[email protected]"
gitlab_rails['smtp_password'] = "密码" # 建议用客户端密码
gitlab_rails['smtp_domain'] = "aabg.net"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = false
gitlab_rails['smtp_tls'] = true
gitlab_rails['smtp_openssl_verify_mode'] = 'peer'
gitlab_rails['gitlab_email_from'] = '[email protected]'
gitlab_rails['gitlab_email_reply_to'] = '[email protected]'
gitlab_rails['smtp_pool'] = false
user["git_user_email"] = "[email protected]"
5. 重新配置 GitLab
sudo gitlab-ctl reconfigure
6. 配置 Nginx 反向代理
6.1 安装 Nginx
sudo apt-get install nginx
6.2 配置 Nginx 以代理 GitLab
sudo nano /etc/nginx/sites-available/gitlab
添加以下内容:
server {
listen 80;
server_name gitlab.aabg.net;
location / {
proxy_pass http://gitlab-ddns.aabg.net:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
启用并重启 Nginx:
sudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
7. 配置防火墙
sudo ufw allow http
sudo ufw enable
8. 配置 DNS
确保在你的 DNS 提供商处进行以下配置:
- 将
gitlab.aabg.net
指向你的外部服务器 IP 地址。 - 将
gitlab-ddns.aabg.net
指向你的内部服务器 IP 地址。
9. 访问 GitLab
- 外部访问:
http://gitlab.aabg.net
- 内部访问:
http://gitlab-ddns.aabg.net:8080
10. 设置 GitLab(密码选择一种方式,使用原密码或直接修改)
sudo cat /etc/gitlab/initial_root_password #查看密码
sudo gitlab-rake "gitlab:password:reset" #重置密码
首次访问时,设置管理员密码。设置后登录并开始配置 GitLab 实例。
评论区