お試し用に家の Ubuntu サーバマシンに Forgejo を入れてみたメモ。
Forgejo は Gitea のフォークで、最近よく見かける Codeberg も Forgejo らしい。 フォークの経緯については Forgejo のブログ記事 Beyond coding, We forge. に書かれている。
読み方は「フォジェーオ」?
Forgejo FAQ に読み上げ音声へのリンクがある。
前提:
- 個人用途
- Tailscale 経由でアクセス
- SQLite
Docker Compose でセットアップ
compose.yaml を書いて
networks:
forgejo:
external: false
services:
server:
image: codeberg.org/forgejo/forgejo:15
container_name: forgejo
environment:
- USER_UID=1000
- USER_GID=1000
- FORGEJO__server__SSH_PORT=222
restart: always
networks:
- forgejo
volumes:
- ./forgejo:/data
- /etc/localtime:/etc/localtime:ro
ports:
- '3000:3000'
- '222:22'
Docker Compose で起動
docker compose -f compose.yaml up -d
FORGEJO__server__SSH_PORT を設定しておくと Web UI 上で SSH ポートが反映されるようになる。networks まわりの記載は不要かも。
データベースはデフォルトだと SQLite が使われる。
参考リンク:
GitHub リポジトリのマイグレーション
Forgejo は GitHub などからリポジトリをマイグレーションすることができる。
+ メニューから New migration を選ぶとマイグレーション元のプロバイダが選べて…

例えば GitHub を選択すると以下のような画面になる。UI の通りに進めていけば良い。

Issue や PR もマイグレーションできる。 ただ、試してみたところ画像や添付ファイルはマイグレーションされず、GitHub のリソースへのリンクのままになるので要注意。 (go-gitea/gitea#33374)
画像や添付ファイルも移行したい場合は別途作業が必要になる。