From e10598dd7fe27b5e31e6c4d96a827111e634ccb8 Mon Sep 17 00:00:00 2001 From: wbsong111 Date: Thu, 12 Dec 2024 16:54:27 +0900 Subject: [PATCH] Update CUSTOM-README.md for deploying Gitea with the PostgreSQL subchart enabled. --- charts/gitea/CUSTOM-README.md | 62 +++++++++++++++++++++++++++++------ 1 file changed, 52 insertions(+), 10 deletions(-) diff --git a/charts/gitea/CUSTOM-README.md b/charts/gitea/CUSTOM-README.md index 9cfc998..fbc3f3a 100644 --- a/charts/gitea/CUSTOM-README.md +++ b/charts/gitea/CUSTOM-README.md @@ -2,12 +2,15 @@ # Gitea 배포 ## 1. 배포 전 사전 필요 사항 -- ingress 배포를 위해서는 인증서가 secret으로 배포되어있어야 한다. -- gitea가 배포될 **네임스페이스**에 postgresql이 배포되어 있어야 한다. +1. 클러스터 배포 시 + - gitea가 배포될 **네임스페이스**에 postgresql이 배포되어 있어야 한다. + - SSO 연동을 위해서는gitea가 배포될 **네임스페이스**에 keycloak 인증서가 secret으로 존재해야 한다. +2. 테넌트 배포시 + - SSO 연동을 위해서는 gitea가 배포될 **네임스페이스**에 keycloak 인증서가 secret으로 존재해야 한다. -## 2.custom-values.yaml 설명 +## 2. custom-values.yaml 설명 - custom-values.yaml에 정의된 값에 대한 설명이다. @@ -59,6 +62,8 @@ + + ## 3. Ingress 설정 @@ -124,9 +129,12 @@ ingress: secretName: gitea-tls-secret ``` -## 4. lifecycleHook을 이용한 Keycloak SSO 연동 -- keycloak 대상의 SSO 연동 설정 시 아래 설정을 `custom-values.yaml`에 작성한다. + +## 4. Keycloak SSO 연동 + +- keycloak 대상의 SSO 연동 설정 시 아래 설정을 `custom-values.yaml` 또는 `argo-values.yaml`에 추가한다. +- keycloak이 사설 인증서를 사용할 시 keycloak의 ca.crt를 secret으로 배포하고 아래와 같이 pod에 마운트한다. - `KEYCLOAK_URL`에 있는 정보를 keyclok에서 사용하는 도메인으로 수정이 필요하다. - `REALM`에 있는 정보를 keycloak에서 사용할 realm으로 수정이 필요하다.. - `KEYCLOAK_CLIENT_ID`에 있는 정보를 kecloak의 client id로 수정이 필요하다. @@ -137,14 +145,15 @@ ingress: extraVolumes: - name: gitea-tls secret: - ## 직접 생성 시 + ## 직접 생성하거니 같은 인증서를 사용할 때 secretName: platform ## cert-manganager 사용시 - # secretName: gitea-tls-secret + # secretName: keycloak-tls-secret extraContainerVolumeMounts: - name: gitea-tls - mountPath: /data/gitea/https + mountPath: /etc/ssl/certs/ca.crt + subPath: ca.crt lifecycleHooks: postStart: @@ -154,8 +163,6 @@ lifecycleHooks: - "-c" - | /bin/bash <<'EOF' > /tmp/post_start.log - cp /data/gitea/https/tls.crt /usr/local/share/ca-certificates/ # 사설 인증서 사용시에만 추가 - update-ca-certificates # 사설 인증서 사용시에만 추가 su git OAUTH_NAME='keycloak' AUTH_ID=$(gitea admin auth list --vertical-bars | grep -E "\|${OAUTH_NAME}\s+\|" | grep -iE '\|OAuth2\s+\|' | awk -F " " "{print \$1}") @@ -174,3 +181,38 @@ lifecycleHooks: fi EOF ``` + + +## 5. 테넌트 배포 + +- 테넌트 배포를 위하여 차트에 포함된 postgresql를 포함하여 배포하기 위한 설정이다. +- 전체 내용은 argo-values.yaml 참조한다. + +``` yaml +gitea: + admin: + username: sudouser + password: password + email: "sudouser@cro.com" + config: + APP_NAME: paasup git + RUN_MODE: prod + server: + ROOT_URL: https://gitea.example.org + service: + DEFAULT_ALLOW_CREATE_ORGANIZATION: true + repository: + DEFAULT_BRANCH: master + +postgresql: + enabled: true + global: + postgresql: + postgresqlDatabase: gitea # 데이터베이스 이름 설정 + postgresqlUsername: gitea # 데이터베이스 사용자 이름 설정 + postgresqlPassword: gitea # 데이터베이스 사용자 비밀번호 설정 + persistence: + size: 5Gi + # storageClass: "" # 생성할 볼륨의 storageClass를 설정한다. +``` +