# Forgejo

forgejo (포제조 정도로 발음) : 에스페란토어로 forge 라고 한다. gitea fork

# git 설치
```
dnf install git
```

# forgejo 설치
```bash
mkdir forgejo
cd forgejo
wget -O forgejo-11.0.3-linux-amd64.xz https://codeberg.org/forgejo/forgejo/releases/download/v11.0.3/forgejo-11.0.3-linux-amd64.xz
xz -d forgejo-11.0.3-linux-amd64.xz
ln -s forgejo-11.0.3-linux-amd64 forgejo
chmod +x forgejo-11.0.3-linux-amd64
```

# database 설정

## mysql 접속
```sql
CREATE USER 'forgejo'@'localhost' IDENTIFIED BY '(Forgejo@aicsgw00)';
CREATE USER 'forgejo'@'%' IDENTIFIED BY '(Forgejo@aicsgw00)';
CREATE DATABASE forgejo CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_bin';
GRANT ALL ON forgejo.* TO 'forgejo'@'localhost';
GRANT ALL ON forgejo.* TO 'forgejo'@'%';
```

## forgejo 초기 기동
```bash
./forgejo
```
3000 번 포트로 web browser 접속 후에 위의 database 정보 입력 후 설치 진행

## forgejo 설정 변경
수정된 내용만 표시
```ini
[server]
SSH_DOMAIN = 192.168.7.151
DOMAIN = 192.168.7.151
HTTP_PORT = 8083
ROOT_URL = http://192.168.7.151/gitea

[openid]
ENABLE_OPENID_SIGNIN = false
ENABLE_OPENID_SIGNUP = true
```

forgejo - keycloak 설정
gitea 예제임 - [SSO를 연동해보자 (keycloak - gitea)](https://hyeonm1339.tistory.com/83)

현재는 그냥 forgejo 나 gitea 를 OAuth2 provider 로 만들어서 연동하는 쪽을 선호. (keycloak 이 필요 없다.)
[OAuth2 provider](https://forgejo.org/docs/latest/user/oauth2-provider/)
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9