Forgejoとは
freeで使える軽量なセルフホスト型のフォージソフトウェア
平たく言えばgiteaの派生。
参考
- (公式サイト)https://forgejo.org/
- https://codezine.jp/article/detail/17071
- https://blog.css-net.co.jp/entry/2023/04/26/135209
前提
- windowsPCを使うこと。
- windowsPCにWSLをインストールしておくこと
- dockerをあらかじめインストールすること
Forgejo実行
docker-composeを書いて、実行するまでを記す。
wsl上で下記のコマンドを実行して、docker-compose.yml
を作成する
mkdir forgejo
cd forgejo
touch docker-compose.yml
何らかのテキストエディタでdocker-compose.yml
を開く
中身はgiteaのものをベースにして作ればOK。例えば下記。
version: "3"
networks:
gitea:
external: false
services:
server:
image: codeberg.org/forgejo/forgejo:1.19.3-0
container_name: forgejo
environment:
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=db:5432
- GITEA__database__NAME=mydb # 適宜修正
- GITEA__database__USER=myuser # 適宜修正
- GITEA__database__PASSWD=mypassword # 適宜修正
restart: always
networks:
- gitea
volumes:
- ./dddd:/data # 適宜修正
ports:
- "xxxx:3000" # 適宜修正
- "yyyy:22" # 適宜修正
depends_on:
- db
db:
image: postgres:14
restart: always
environment:
- POSTGRES_USER=myuse # 適宜修正
- POSTGRES_PASSWORD=mypassword # 適宜修正
- POSTGRES_DB=mydb # 適宜修正
networks:
- gitea
volumes:
- ./postgres:/var/lib/postgresql/data
パスワードとかユーザ名は適宜変える。見てわかる通り、DBにはpostgresを使っている
書き終えたら下記を実行
docker compose up
フロントグラウンド処理になるのでバックグラウンドで動かしたいなら``-d```オプションをつける
最初はちゃんと動いているのを確認するためにオプションはつけないほうがいいかも?
accept connection
が表示されればOK
ブラウザで下記URLにアクセスしたら表示される
http://localhost:xxxx
初期設定画面が表示されるが、特にいじらなくていい。
「forgejoをインストール」をクリックしてしばらく待つ。
インストールできれば、アカウント登録して利用したらいい。
ポート設定
localで使う分には設定がいらないが、lan内から使うにはポートの設定が必要。
主に下記の2つ
- WSLのポートフォワーディング設定
- windowファイアーウォール設定
wslのポートフォワーディング設定
wsl上で下記を実行する。
ifconfig
eth0のネットワークにwslのipアドレスがあるので記憶しておく。
次に、パワーシェルを管理者として開き、下記を実行する。
netsh interface portproxy add v4tov4 listenport="windowsのポート" connectport="WSLのポート(forgejoのポート)" connectaddress="wslのipアドレス"
下記を実行して、設定が反映されていればOK
netsh interface portproxy show all
windowsファイアーウォール設定