容器設定與安裝
開啟 synology 套件中心下的 docker,使用倉庫伺服器查詢 gitea 映像檔,版本選用 latest。
等待 gitea 晚像檔下載完成後,點按佈署按鈕後產生容器進行設定。
容器命名 gitea 後,點按進階設定。
docker 資料夾下建立 gitea 資料夾,讓容器存放檔案與設定。
在容器進階設定裡,前往儲存空間下點按新增資料夾按鈕,選到先前所建的 gitea 資料夾,掛載路徑填入 /data。
連接埠設定多增加
20022,原本的 22 是用來給預設的 ssh 連線用,但在預設產生下的網址使用路徑上,會與 synology 預設使用的連接埠號有重疊,在這樣的情形下以新增出多的一個專屬於 gitea 以 ssh 連線專用的連接埠,進行客製的設定,原本容器預設的 22 埠號就自動不用在進行設定。
因此在使用 ssh 連線上,以本機端的網址路徑為例就會是 ssh://<nas ip or domain>:20022/<user>/<repo name>.git 來使用。
新增環境變數加入 USER_UID 與 USER_GID 的 key 設定,值都為 1000。
1 2 3 | environment: - USER_UID=1000 - USER_GID=1000 |
以上設定都完成後,就可以在新增容器的介面上點按下一步與套件,運行 gitea 了。
瀏覽器初啟 gitea
初始組態設定
瀏覽器輸入 http://<nas ip or domain>:23000/ 開啟 gitea,沒問題的話就可以開啟 gitea 網頁上的初始組態設定介面,基本上不用設定除非要設定資料庫的使用類型,不然以預設為主就好,而下面的網站標題也可以預先設定。
基本上只需要設定Gitea 基本 URL的輸入框就可以了,一樣和先前開啟初始組態設定的 http://<nas ip or domain>:23000/ 網址。
電子郵件寄件者輸入信箱是給 gitea 發送使用。
管理員帳戶設定,輸入帳號名稱與密碼,另外如果 email 沒有輸入時,送出表單後會回應要求重新輸入。
新建儲存庫
新建儲存庫,在登入後的首頁右方介面,點按下 + 的新增儲存庫圖示按鈕,進入儲存庫設定。
進入儲存庫設定頁面,指定儲存庫名稱,就會產生出空的儲存庫。
新建出來的儲存庫,在 HTTP 的網址部份都正常,在沒有使用外部 domain 而以區網指定 nas ip 做為網址名稱,這部份是正常可直接依 git 指令,建出新的 commit 在儲存庫之中。
conf/app.ini 設定關閉 SSH 連線與註冊相關介面
切換到 SSH 的部份網址就會有問題了,可同後面的設定關閉 SSH 的相關介面。
前往 /docker/gitea/gitea/conf 路徑下開啟 app.ini 檔,將進行下面的設定。
– 前往 [server] 下找到 DISABLE_SSH:設定為 true 關閉介面與相關方式,只會留下 HTTP 的方式進行連線。
– 前往 [service] 下找到 DISABLE_REGISTRATION 與 REQUIRE_SIGNIN_VIEW,將設定都設為 true
app.ini 檔修改後存檔,遇到權限無法寫入,在資料夾上點按內容設定權限,將 Authenticated Users 加入,並將所有權限開啟。
相關 SSH 介面取消外另外也無法使用。
入口頁上方的導航列,少了註冊的按鈕可讓使用者自行註冊帳號。
參考資料
設定資料
– Felix’s Life – 在Synology Nas上安裝gitea
– Mesak – [軟體] 在 SYNOLOGY 群暉 NAS 上利用 DOCKER 安裝 GITEA
– youtube – Install GitEA on Synology with Docker to Version Control your Code with HTTP Git! | 4K TUTORIAL (關閉註冊介面)
– 黑暗執行緒 – Git 私服第一品牌 – Gitea
– gitea 官方文件 – custom/conf/app.ini 參數設定