|
1 | 1 | # GZCTF Helm Chart |
2 | | -  |
| 2 | +  |
3 | 3 | [](https://github.com/GZCTF/helm/actions/workflows/lint-and-test-chart.yaml) |
4 | 4 |
|
5 | 5 | This is a Helm chart for deploying GZCTF on Kubernetes. It deploys the official [GZCTF Docker image](https://ghcr.io/gztimewalker/gzctf/gzctf). Optional HA/Autoscaling (still experimental) + postgresql or postgresql-ha + [Garnet](https://github.com/microsoft/Garnet) or [redis-ha](https://github.com/DandyDeveloper/charts/tree/master/charts/redis-ha) + [MinIO S3](https://github.com/minio/minio/tree/master/helm/minio). Also supports using external Postgresql/Redis/S3. |
@@ -42,9 +42,12 @@ helm install release-name . -f values.yaml --create-namespace --namespace gzctf |
42 | 42 | helm uninstall release-name --namespace gzctf |
43 | 43 | ``` |
44 | 44 |
|
45 | | -## Info |
46 | | -- multi-node is still experimental (needs extensive testing) |
47 | | -- postgresql-ha bitnami image is legacy/deprecated |
| 45 | +## Important Notes |
| 46 | +- multi-node deployment is still experimental (needs extensive testing) |
| 47 | +- gzctf support for s3 bucket is experimental (single-node deployment doesnt need s3 bucket) |
| 48 | +- garnet/redis is not needed for single-node deployment |
| 49 | +- minio stopped releasing community edition binaries and docker images [minio/minio/issues/21647](https://github.com/minio/minio/issues/21647) |
| 50 | +- postgresql-ha bitnami image is [legacy/deprecated](https://github.com/bitnami/containers/issues/83267) |
48 | 51 |
|
49 | 52 | ## Values examples |
50 | 53 |
|
@@ -141,7 +144,7 @@ minio: |
141 | 144 |
|
142 | 145 | | Key | Type | Default | Description | |
143 | 146 | |-----|------|---------|-------------| |
144 | | -| extraObjects | list | [] | Additional Kubernetes manifests to deploy with this Helm chart | |
| 147 | +| extraObjects | list | `[]` | Additional Kubernetes manifests to deploy with this Helm chart | |
145 | 148 | | garnet.config.existingSecret | string | `""` | Garnet secret (if you want to use an existing secret). This secret must contains a key called 'garnet.conf'. | |
146 | 149 | | garnet.config.garnetConf | string | `"{\n \"AuthenticationMode\": \"Password\",\n \"Password\": \"gzctf\"\n}\n"` | The garnet.conf data content. | |
147 | 150 | | garnet.enabled | bool | `false` | Enable Microsoft Garnet cache-store deployment | |
@@ -224,17 +227,27 @@ minio: |
224 | 227 | | minio.rootPassword | string | `"gzctf"` | MinIO password | |
225 | 228 | | minio.rootUser | string | `"gzctf"` | MinIO user | |
226 | 229 | | postgresql-ha.enabled | bool | `false` | Enable or disable PostgreSQL HA deployment (THIS USES BITNAMI LEGACY IMAGES BY DEFAULT WHICH NO LONGER RECIEVE RPOPER SECURITY UPDATES) | |
227 | | -| postgresql-ha.image.registry | string | `"docker.io"` | Docker registry for PostgreSQL image | |
228 | | -| postgresql-ha.image.repository | string | `"bitnamilegacy/postgresql-repmgr"` | PostgreSQL repository (legacy repmgr version) | |
229 | | -| postgresql-ha.image.tag | string | `"17.6.0-debian-12-r2"` | PostgreSQL image tag (version 17.6.0) | |
| 230 | +| postgresql-ha.metrics.enabled | bool | `false` | postgresql exporter enable | |
| 231 | +| postgresql-ha.metrics.image.registry | string | `"docker.io"` | postgres-exporter image registry | |
| 232 | +| postgresql-ha.metrics.image.repository | string | `"bitnamilegacy/postgres-exporter"` | postgres-exporter image repository | |
| 233 | +| postgresql-ha.metrics.image.tag | string | `"0.17.1-debian-12-r16"` | postgres-exporter image tag | |
230 | 234 | | postgresql-ha.persistence.accessMode | string | `"ReadWriteOnce"` | Volume access mode | |
231 | 235 | | postgresql-ha.persistence.enabled | bool | `true` | Enable persistent volume for database storage | |
232 | 236 | | postgresql-ha.persistence.size | string | `"2Gi"` | Persistent volume size | |
233 | 237 | | postgresql-ha.persistence.storageClass | string | `""` | Storage class name (empty string uses cluster default) | |
| 238 | +| postgresql-ha.pgpool.image.registry | string | `"docker.io"` | pgpool image registry | |
| 239 | +| postgresql-ha.pgpool.image.repository | string | `"bitnamilegacy/pgpool"` | pgpool image repository | |
| 240 | +| postgresql-ha.pgpool.image.tag | string | `"4.6.3-debian-12-r0"` | pgpool image tag | |
234 | 241 | | postgresql-ha.postgresql.database | string | `"gzctf"` | Default database name to create | |
| 242 | +| postgresql-ha.postgresql.image.registry | string | `"docker.io"` | Docker registry for PostgreSQL image | |
| 243 | +| postgresql-ha.postgresql.image.repository | string | `"bitnamilegacy/postgresql-repmgr"` | PostgreSQL repository (bitnamilegacy repmgr version) | |
| 244 | +| postgresql-ha.postgresql.image.tag | string | `"17.6.0-debian-12-r2"` | PostgreSQL image tag (version 17.6.0) | |
235 | 245 | | postgresql-ha.postgresql.password | string | `"gzctf"` | PostgreSQL superuser password (should be overridden or use secrets) | |
236 | 246 | | postgresql-ha.postgresql.username | string | `"postgres"` | PostgreSQL superuser username | |
237 | 247 | | postgresql-ha.volumePermissions.enabled | bool | `true` | Enable init container to set proper volume permissions | |
| 248 | +| postgresql-ha.volumePermissions.image.registry | string | `"docker.io"` | volume-permissions image registry | |
| 249 | +| postgresql-ha.volumePermissions.image.repository | string | `"bitnamilegacy/os-shell"` | volume-permissions image repository | |
| 250 | +| postgresql-ha.volumePermissions.image.tag | string | `"12-debian-12-r51"` | volume-permissions image tag | |
238 | 251 | | postgresql.affinity | object | `{}` | Affinity rules for PostgreSQL pod scheduling | |
239 | 252 | | postgresql.enabled | bool | `true` | Enable PostgreSQL deployment | |
240 | 253 | | postgresql.env | list | `[{"name":"POSTGRES_PASSWORD","value":"gzctf"}]` | Environment variables for PostgreSQL container | |
|
0 commit comments