Ubuntu 搭建 GitLab 集成开发环境的实用方案
一 架构与准备
sudo apt update && sudo apt install -y curl openssh-server ca-certificates tzdata perlsudo hostnamectl set-hostname gitlab二 安装与部署 GitLab
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install -y gitlab-ce
sudo vim /etc/gitlab/gitlab.rb
# 示例:external_url 'http://192.168.10.10' 或 'https://gitlab.example.com'
sudo gitlab-ctl reconfigure
sudo gitlab-ctl start
sudo cat /etc/gitlab/initial_root_password
version: '3.6'
services:
gitlab:
image: gitlab/gitlab-ee:17.4.5-ee.0
container_name: gitlab
restart: always
ports:
- '5480:80'
- '5443:443'
- '5022:22'
volumes:
- './config:/etc/gitlab'
- './logs:/var/log/gitlab'
- './data:/var/opt/gitlab'
shm_size: '256m'
# 启动
docker-compose up -d
# 查看初始 root 密码
docker exec -it gitlab cat /etc/gitlab/initial_root_password
sudo gitlab-ctl status # 查看组件状态
sudo gitlab-ctl tail # 实时查看日志
sudo gitlab-ctl restart # 重启服务
gitlab-ctl version # 查看版本
以上步骤覆盖原生与容器化两种主流部署方式,适合快速落地与后续扩展。
三 安全与基础配置
sudo apt-get install -y certbot
sudo certbot --nginx -d gitlab.example.com
sudo systemctl restart nginx
/etc/gitlab/gitlab.rb 中配置 external_url 'https://gitlab.example.com' 并重新配置:sudo gitlab-ctl reconfiguresudo vim /etc/gitlab/gitlab.rb
# 将注册开关设为 false
gitlab_rails['gitlab_sign_up_enabled'] = false
sudo gitlab-ctl reconfigure
sudo ufw allow 80,443,22/tcp四 客户端 IDE 与 Git 集成
sudo apt install -y gitgit config --global user.name "Your Name"、git config --global user.email "you@example.com"sudo apt install ./code_*.deb五 CI/CD 与本地开发闭环
.gitlab-ci.yml,示例:stages:
- build
- test
build:
stage: build
script:
- make build
test:
stage: test
script:
- ./run_tests.sh