iT邦幫忙

第 12 屆 iT 邦幫忙鐵人賽

DAY 2
1
DevOps

遠離 DevOops系列 第 2

[Day 2] Oops!Gitea - 建置與安裝

在我們團隊中,一切DevOps的運作的起點就是從GitOps開始,相信大家都有在使用好用的github,另外想要私有專案、公司內及個人使用的前提來挑選git服務,我選擇了gitea,主要是個人偏愛Go語言,還有安裝及升級比其他服務來得容易許多。

另外gitea的開源專案也持續在維護及更新。

gitea對於其他Git託管服務的比較圖

那麼我們就開始來玩Gitea吧 /images/emoticon/emoticon37.gif

VM建置 (GCP)


首先要考量的是VM的配置,當然配置上也要考慮到之後的維護。
以下是官方的說明

最低的系統需求就是一片便宜的樹莓派 (Raspberry Pi)。
如果用於團隊,建議使用 2 核 CPU 和 1GB 記憶體。

以我個人的經驗的建議

  • 使用人數 < 20人 -> e2-micro (2 個 vCPU,1 GB 記憶體)
  • 使用人數 > 20人 -> e2-small (2 個 vCPU,2 GB 記憶體)
  • 使用人數 > 50人 -> 請再自行評估唷!(本人目前還沒有經歷過)

再來就是硬碟使用的考量的部分

一開始可以先開小容量的硬碟,在GCP上硬碟擴充容量也很方便的。

另外建議加掛SSD,將gitea掛進SSD內,原因下方Oops會說明。

Oops!隨著使用人數&Repo的量增加,Gitea頁面回應時間會越來越慢。


若排除預算來考量的話,想體驗網頁回應時間約 < 20ms的話,

本人測試過提升CPU&Memory來測試網頁回應時間是否有縮短,但沒看到明顯的差異。
差異最多的是,從把原本HHD的gitea目錄檔案搬遷到SSD硬碟下,可以很明顯的看到網頁回應時間大幅縮短。

安裝


機器建置完成後,就可以來進行安裝gitea囉
因為本人是使用docker-compose來安裝的唷

麻煩讀者們連到機器上安裝:

  • docker
  • docker-compose
    以上所需的套件,下載完成後,可以參考下方的docker-compose.yaml
version: "3"

services:
  gitea:
    container_name: mygitea
    image: gitea/gitea:1.12.3
    restart: always
    volumes:
      - ./:/data
    ports:
      - "3000:3000"
      - "22:22"
    environment:
      - ROOT_URL=http://mygitea/

透過docker-compose 安裝gitea

docker-compose up -d

使用docker-compose來安裝Gitea的原因之一是可以讓我非常無痛的更版。

明天會有示範我都怎麼把gitea升版的

Oops!小心機器會自動被OS更新重啟 /images/emoticon/emoticon50.gif

之前有遇過VM機器在無預警下被重啟,後來去翻SystemLog才發現是機器內的OS自動更新觸發的。

所以強烈建議將自動更新的設定關閉!

以下是linux範例

yum remove yum-cron

若是讀著們使用其他的OS,也建議查詢一下是否有自動更新的設定可以關閉!

今日小結: 目前我們已經把機器架設起來,並且裝好Gitea囉,明天會來談如何備份與維護gitea。


上一篇
[Day 1] Oops!前言
下一篇
[Day 3] Oops!Gitea - 備份與維護
系列文
遠離 DevOops30

尚未有邦友留言

立即登入留言