[Linux][Ubuntu]GitLab

閱讀時間約 4 分鐘

GitLab為程式碼管理倉庫,且從8.0開始提供CI/CD

安裝

更新套件索引

sudo apt update


安裝postfix

sudo apt install ca-certifi​cates curl openssh-server postfix


切換目錄

cd /tmp/


下載GitLab安裝指令稿

curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh



執行GitLab安裝指令稿

sudo bash /tmp/script.deb.sh


安裝GitLab

sudo apt install gitlab-ce


下載GitLab Runner安裝並執行指令稿

curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash 

GitLab Runner可以安裝在不同機器上,在執行建構時,才不會影響到GitLab。


安裝GitLab Runner

sudo apt-get install gitlab-runner


環境設定

編輯設定檔

vim /etc/gitlab/gitlab.rb​

修改“external_url”為自己的網址,並保存關閉設定檔。


執行重新設定GitLab

sudo gitlab-ctl recofigure


重新啟動GitLab

sudo gitlab-ctl restart


開機自動啟動GitLab

sudo systemctl enable gitlab-runsvdir.service


編輯設定檔

vim /etc/gitlab/gitlab.rb​

需要修改的項目如下,並保存關閉設定檔。

gitlab_rails['gitlab_email_enable']

gitlab_rails['gitlab_email_from']

gitlab_rails['gitlab_email_display_name']

gitlab_rails['smtp_enable']

gitlab_rails['smtp_address']

gitlab_rails['smtp_port']

gitlab_rails['smtp_user_name']

gitlab_rails['smtp_password']

gitlab_rails['smtp_domain']

gitlab_rails['smtp_authentication']

gitlab_rails['smtp_enable_starttls_auto']

gitlab_rails['smtp_tls']


執行重新設定GitLab

sudo gitlab-ctl recofigure


發送測試郵件

sudo gitlab-rails console


開機自動啟動GitLab Runner

sudo systemctl enable gitlab-runner


啟動GitLab Runner

systemctl start gitlab-runner


取得gitlab-ci的Token

Group首頁 -> Settings -> CI/CD -> Runners Expand


GitLab Runner與GitLab CI/CD綁定

sudo gitlab-ci-multi-runner register​

接著依指示輸入”GitLab網址“、”gitlab-ci的Token“、”Runner的描述“、”Runner的tag“和”選擇執行器“







8會員
123內容數
嗨,我是一名程式設計師,會在這分享開發與學習紀錄。
留言0
查看全部
發表第一個留言支持創作者!
小黑與程式的邂逅 的其他內容
Docker-Compose負責對container做快速編排。設定檔預設名稱為docker-compose.yml,在檔案中,可以透過COMPOSE_FILE或-f對設定進行定義。 想要將專案透過Docker-Compose部署,需要創建docker-compose.yml和Dockerfile
獲取Image docker pull 查看Image docker images 可以查看REPOSITORY、TAG、IMAGE ID、CREATED與SIZE。 創建Image docker build [OPTIONS] PATH | URL | - 上傳Imag
MacOS 請先安裝「Homebrew」。開啟「終端機」,輸入底下指令: brew cask install​ docker 載入Docker App後,點擊Next,輸入MacOS登入密碼。安裝完成後,輸入底下指令查看版本資訊: ​docker -v Linux 開啟「終端機
Docker是由GO語言實現,是一個在GitHub上開發原始碼的專案。它的目標是實現羽量級的作業系統虛擬化。讓使用者操作Docker,就像是操作一個羽量級的虛擬機器。 優勢 快速發表和部署 高效的部署和擴充 資源使用率高 管理簡單 核心 Image映像檔 Docker
授權碼模式連線流程 用戶端請求自己的伺服器。 伺服器發現用戶沒登入,就導向認證伺服器。 認證伺服器顯示授權頁面,等待用戶授權。 用戶確認授權後,授權頁面會向認證伺服器請求授權碼。 用戶獲取授權碼。 用戶將授權碼傳給伺服器。 伺服器拿授權碼向認證伺服器取得token。 應用註冊
Docker-Compose負責對container做快速編排。設定檔預設名稱為docker-compose.yml,在檔案中,可以透過COMPOSE_FILE或-f對設定進行定義。 想要將專案透過Docker-Compose部署,需要創建docker-compose.yml和Dockerfile
獲取Image docker pull 查看Image docker images 可以查看REPOSITORY、TAG、IMAGE ID、CREATED與SIZE。 創建Image docker build [OPTIONS] PATH | URL | - 上傳Imag
MacOS 請先安裝「Homebrew」。開啟「終端機」,輸入底下指令: brew cask install​ docker 載入Docker App後,點擊Next,輸入MacOS登入密碼。安裝完成後,輸入底下指令查看版本資訊: ​docker -v Linux 開啟「終端機
Docker是由GO語言實現,是一個在GitHub上開發原始碼的專案。它的目標是實現羽量級的作業系統虛擬化。讓使用者操作Docker,就像是操作一個羽量級的虛擬機器。 優勢 快速發表和部署 高效的部署和擴充 資源使用率高 管理簡單 核心 Image映像檔 Docker
授權碼模式連線流程 用戶端請求自己的伺服器。 伺服器發現用戶沒登入,就導向認證伺服器。 認證伺服器顯示授權頁面,等待用戶授權。 用戶確認授權後,授權頁面會向認證伺服器請求授權碼。 用戶獲取授權碼。 用戶將授權碼傳給伺服器。 伺服器拿授權碼向認證伺服器取得token。 應用註冊
你可能也想看
Google News 追蹤
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
Thumbnail
在先前的文章中說明了Linux大致上的安裝流程,整個過程只要依照畫面的指示設定,都可以安裝成功。其中可能比較困難在於硬碟空間的分配,這對於許多新手來說也是一個難點,也是這篇所要說的重點。
Thumbnail
情境描述 小明身為Linux系統工程師, 目前接到一個緊急任務, 需要在客戶端確保csv表的某個欄位的值不能重複, 對於軟體工程師來說只要寫個程式就能夠解決, 但客戶端並沒有相關的程式語言啊! 這時候只能夠使用現成的工具來完成,而經驗老道的我們很快就想到了解決方法, 不要急, 就讓我們一步
Thumbnail
當改用Linux的時候,會發現像是:Office、Photoshop、AutoCAD等......,這些平常在Windows上會用到的軟體根本就沒有Linux版本。至於為什麼沒有,很簡單,因為Linux系統常用在伺服器上、超級電腦這些專業領域用途,平時幾乎沒有人拿來做為日常使用,在加上......
Thumbnail
Linux的軟體安裝流程大致上與其他系統並沒有太大的區別,僅此在於安裝的方式會比較多元。但也因為這樣,常會讓新手感到很混亂,不知道要下手。所以本篇就來說說如何在Linux上安裝軟體。
Thumbnail
我們在進行Linux作業時, 常常會撰寫一些腳本來進行我們的任務, 而我們執行任務當下假如沒有將當時的參數紀錄起來常常事後追朔時很容易就遺漏掉, 尤其是在AI模型訓練這一塊, 每次的訓練都是好幾個小時甚至好幾天⏱️⏱️⏱️, 我們常常會需要對模型訓練的參數與結果進行分析, 那麼蛛絲馬跡就非常重要了,
Thumbnail
安裝好新系統,當然也要習慣新的操作界面。有別於我們常用的Windows和macOS,Linux系統並沒有固定操作界面,而是會根據每個發行版而有所不同。
Thumbnail
經過試用之後,如果覺得滿意,就可以考慮將系統安裝到硬碟裡了。安裝到硬碟的好處是可以充分發揮電腦硬體效能,不用再被外接式裝置拖累速度。此外,設定和檔案都可以保留,使用體驗也會比較完整。
Thumbnail
我們偶爾在Linux的Bash腳本都會看到「pushd …」、「popd」的影子, 一開始看到也覺得這是什麼碗粿…, 這樣很難讀耶, 但指令被發明出來一定是有它存在的意義與道理的, 我們不能因為未知就直覺的認為該指令毫無作用, 而是要在正確的情境之下去使用。 pushd與popd我們就理解
Thumbnail
當你選擇好發行版後,下一步就是把系統安裝在硬......,等等!!新的系統都還很陌生,這樣貿然安裝真的好嗎?如果遇到軟體相容性問題,或者跟硬體水火不容那要怎麼辦?
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
Thumbnail
在先前的文章中說明了Linux大致上的安裝流程,整個過程只要依照畫面的指示設定,都可以安裝成功。其中可能比較困難在於硬碟空間的分配,這對於許多新手來說也是一個難點,也是這篇所要說的重點。
Thumbnail
情境描述 小明身為Linux系統工程師, 目前接到一個緊急任務, 需要在客戶端確保csv表的某個欄位的值不能重複, 對於軟體工程師來說只要寫個程式就能夠解決, 但客戶端並沒有相關的程式語言啊! 這時候只能夠使用現成的工具來完成,而經驗老道的我們很快就想到了解決方法, 不要急, 就讓我們一步
Thumbnail
當改用Linux的時候,會發現像是:Office、Photoshop、AutoCAD等......,這些平常在Windows上會用到的軟體根本就沒有Linux版本。至於為什麼沒有,很簡單,因為Linux系統常用在伺服器上、超級電腦這些專業領域用途,平時幾乎沒有人拿來做為日常使用,在加上......
Thumbnail
Linux的軟體安裝流程大致上與其他系統並沒有太大的區別,僅此在於安裝的方式會比較多元。但也因為這樣,常會讓新手感到很混亂,不知道要下手。所以本篇就來說說如何在Linux上安裝軟體。
Thumbnail
我們在進行Linux作業時, 常常會撰寫一些腳本來進行我們的任務, 而我們執行任務當下假如沒有將當時的參數紀錄起來常常事後追朔時很容易就遺漏掉, 尤其是在AI模型訓練這一塊, 每次的訓練都是好幾個小時甚至好幾天⏱️⏱️⏱️, 我們常常會需要對模型訓練的參數與結果進行分析, 那麼蛛絲馬跡就非常重要了,
Thumbnail
安裝好新系統,當然也要習慣新的操作界面。有別於我們常用的Windows和macOS,Linux系統並沒有固定操作界面,而是會根據每個發行版而有所不同。
Thumbnail
經過試用之後,如果覺得滿意,就可以考慮將系統安裝到硬碟裡了。安裝到硬碟的好處是可以充分發揮電腦硬體效能,不用再被外接式裝置拖累速度。此外,設定和檔案都可以保留,使用體驗也會比較完整。
Thumbnail
我們偶爾在Linux的Bash腳本都會看到「pushd …」、「popd」的影子, 一開始看到也覺得這是什麼碗粿…, 這樣很難讀耶, 但指令被發明出來一定是有它存在的意義與道理的, 我們不能因為未知就直覺的認為該指令毫無作用, 而是要在正確的情境之下去使用。 pushd與popd我們就理解
Thumbnail
當你選擇好發行版後,下一步就是把系統安裝在硬......,等等!!新的系統都還很陌生,這樣貿然安裝真的好嗎?如果遇到軟體相容性問題,或者跟硬體水火不容那要怎麼辦?