在Debian系統上集成GitLab可以為您提供一個強大的代碼托管和持續集成/持續部署(CI/CD)平臺。以下是一個詳細的實踐案例,涵蓋了從安裝到配置的步驟。
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo EXTERNAL_URL="http://your_server_ip" apt-get install gitlab-ce
請將 http://your_server_ip
替換為您的服務器IP地址或域名。
sudo vim /etc/gitlab/gitlab.rb
找到 external_url 'http://your_server_ip'
并確保其設置正確。例如:
external_url 'http://192.168.1.100'
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
sudo apt-get install nginx
sudo vim /etc/nginx/sites-available/gitlab
添加以下內容:
server {
listen 80;
server_name your_server_ip;
location / {
proxy_pass http://gitlab_rails;
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;
}
location /api/ {
proxy_pass http://gitlab_rails;
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;
}
location /uploads/ {
proxy_pass http://gitlab_rails;
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;
}
}
sudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl restart nginx
sudo ufw allow 80
sudo ufw allow 443
sudo ufw reload
cd /path/to/your/project
git init
git add .
git commit -m "Initial commit"
git remote add origin https://gitlab.example.com/your_username/your_project.git
git push -u origin master
.gitlab-ci.yml
文件:在項目根目錄下創建 .gitlab-ci.yml
文件,并添加以下內容:
stages:
- build
- test
- deploy
build:
stage: build
script:
- echo "Building the project..."
artifacts:
paths:
- build/
test:
stage: test
script:
- echo "Running tests..."
deploy:
stage: deploy
script:
- echo "Deploying the project..."
only:
- master
以上步驟涵蓋了在Debian系統上安裝、配置和使用GitLab的基本流程。您可以根據具體需求進一步調整和擴展這些步驟。