溫馨提示×

GitLab 在 CentOS 上如何實現自動化部署

小樊
35
2025-06-24 10:04:03
欄目: 智能運維

在CentOS上實現GitLab的自動化部署通常涉及以下幾個關鍵步驟:

1. 安裝GitLab

首先,需要在CentOS服務器上安裝GitLab??梢酝ㄟ^添加GitLab的yum源來簡化安裝過程。例如,使用以下命令安裝GitLab社區版:

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
sudo yum install gitlab-ce

2. 配置GitLab

安裝完成后,需要配置GitLab的訪問地址和端口??梢酝ㄟ^編輯 /etc/gitlab/gitlab.rb 文件來完成:

sudo vi /etc/gitlab/gitlab.rb

在文件中設置 external_url 為你的服務器IP地址或域名,并重新配置GitLab以應用更改:

external_url 'http://your-gitlab-server-ip'
gitlab_workhorse['listen_network'] 'unix'
gitlab_workhorse['listen_addr'] "unix:/var/opt/gitlab/gitlab-workhorse/socket"

然后執行以下命令重新配置并重啟GitLab:

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

3. 設置GitLab Runner

GitLab Runner是負責執行CI/CD任務的組件。你需要在CentOS上安裝并注冊GitLab Runner。

安裝GitLab Runner

curl -L --output /etc/apt/trusted.gpg.d/gitlab.asc https://packages.gitlab.com/gitlab/gitlab-runner/gpgkey
echo "deb https://packages.gitlab.com/gitlab/gitlab-runner/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gitlab-runner.list
sudo apt-get update
sudo apt-get install gitlab-runner

注冊GitLab Runner

在GitLab項目頁面,點擊 Settings -> CI/CD -> Runners,點擊 Register an instance runner。

復制提供的 Registration token。

在你的CentOS服務器上,以root用戶身份執行以下命令來注冊Runner:

sudo gitlab-runner register --non-interactive --executor "docker" --docker-image alpine:latest --url "http://your-gitlab-server-ip" --registration-token "your-registration-token" --description "docker-runner" --tag-list "newdocker" --run-untagged "true" --locked "false" --docker-volumes /var/run/docker.sock:/var/run/docker.sock --docker-privileged "true" --access-level "not_protected"

啟動GitLab Runner

sudo gitlab-runner start

4. 配置CI/CD流程

在項目根目錄下創建 .gitlab-ci.yml 文件,定義CI/CD流程。以下是一個簡單的示例:

stages:
  - build
  - deploy

build_job:
  stage: build
  script:
    - echo "Building the application..."
    - ./build.sh
  artifacts:
    paths:
      - build/

deploy_job:
  stage: deploy
  script:
    - echo "Deploying the application..."
    - scp target/*.jar user@your-server-ip:/path/to/deploy
  only:
    - master

5. 自動化觸發

你可以通過GitLab的Web界面觸發CI/CD流程。將 .gitlab-ci.yml 文件添加到Git倉庫中,并推送到GitLab服務器上。然后,在項目頁面的側邊欄中選擇 “CI/CD”,點擊 “Run Pipeline” 按鈕即可自動觸發構建、測試和部署流程。

以上步驟提供了一個基本的框架,用于在CentOS上實現GitLab的自動化部署。具體的實現細節可能會根據實際需求和使用的工具版本有所不同。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女