ssh on gitea with docker

Gitea 是一個開源的 git 伺服器,他的界面幾乎和 GitHub 一模一樣,但是完全開源而且非常輕,甚至一片樹梅派就可以開伺服器了。Gitea 因為是使用 Golang 編寫的,所以提供各種平台的執行檔。我選擇透過 docker 裝 Gitea 伺服器,但是這樣有一個問題,gitea 伺服器開在 container 內,沒辦法使用標準的 22 port,所以 git clone 就必須加上一個醜醜的數字,像是這樣 git clone [email protected]:10022:user/repo.git 這個問題 Gitea 官方已經有提供完整的教學了,但是是英文版,我這篇文章是我讀完消化過後的中文版教學 容器 ssh 穿透 因為 Gitea 的 ssh 是跑在容器裡,我沒辦法讓他和 host 共用 22 port,所以要透過 host 「轉發」連線。 1. 建立 git 使用者 先在 host 建立一個名叫 git 的使用者,因為這個帳號會被對應到容器內的 git 使用者,所以要有一樣的 UID, GID sudo adduser git grep git /etc/passwd 記好 git 的 UID 和 GID git:x:1002:1002:,,,:/home/git:/bin/bash ------^^^^ ^^^^ ------GID UID 2....

2021-July-13 · 1 分鐘 · simbafs