feat(gitlab): Finish gitlab configuration
Add backup documentation for internal backup management
This commit is contained in:
parent
574a4b75a4
commit
dcc76f2cab
@ -4,10 +4,10 @@
|
||||
|-------------------------|--------------------------------------|---------------|--------------|------------|----------------------|----------------------|------------------|------------------------|-----------------------------------|
|
||||
| Traefik | Reverse proxy and load balancer | Public* | Socrates | - | - | - | Configured | Configured | Completed |
|
||||
| Vaultwarden | Password manager | Public | Pythagoras-b | MariaDB | - | 4AM K8s CronJob | Configured | Not available | Completed |
|
||||
| Gitlab | Version control system | Public | Pythagoras-b | PostgreSQL | User created content | 5AM internal CronJob | Configured | Configured | Completed<sup>4</sup> |
|
||||
| Adguard | DNS ad blocker and custom DNS server | Private | Socrates | - | - | - | Not configured | Not configured | Pending configuration<sup>1</sup> |
|
||||
| Owncloud Infinity Scale | File hosting webUI | Public | Plato | ? | Drive files | Not configured | Configured | Not available | Pending configuration<sup>2</sup> |
|
||||
| Synapse | Matrix server - Message centralizer | Public | Pythagoras-b | PostgreSQL | User medias | 4AM K8s CronJob | Configured | Configured | Pending configuration<sup>3</sup> |
|
||||
| Gitlab | Version control system | Public | Pythagoras-b | PostgreSQL | User created content | Not configured | Configured | Configured | Pending configuration<sup>4</sup> |
|
||||
| therbron.com | Personal website | Public | Socrates | - | - | - | Not configured | Not configured | Awaiting configuration |
|
||||
| Home assistant | Home automation and monitoring | Private | Pythagoras-a | MariaDB | - | Not configured | Not configured | Not configured | Awaiting configuration |
|
||||
| Vikunja | To-do and Kanban boards | Public | Pythagoras-b | - | - | - | Not configured | Not configured | Migrate to Gitlab |
|
||||
@ -31,7 +31,7 @@
|
||||
<sup>1</sup> Missing automated configuration pipeline for environment variable injection<br>
|
||||
<sup>2</sup> Missing configuration for NAS volume mounting (over network)<br>
|
||||
<sup>3</sup> Missing Longhorn scheduling for saving media_store and secret management<br>
|
||||
<sup>4</sup> Missing `cron` for backup scheduling (require update of the used docker image<br>
|
||||
<sup>4</sup> Backup management is not handled by k3s but by an internal cronjob rule (Change image name when putting to production)<br>
|
||||
|
||||
## Backup management
|
||||
### Databases
|
||||
@ -93,5 +93,5 @@ Add longhorn storage classes
|
||||
### Convert helm chart to k3s manifest
|
||||
`helm template chart stable/chart --output-dir ./chart`
|
||||
|
||||
### Gitlab backup command
|
||||
`gitlab-backup create SKIP=registry,builds,artifacts`
|
||||
### Gitlab backup process
|
||||
Because gitlab does not offer the possibility to backup a container's data from an external container, a cronjob has been implemented in the custom image used for deployment.
|
||||
|
@ -1,25 +0,0 @@
|
||||
apiVersion: batch/v1
|
||||
kind: CronJob
|
||||
metadata:
|
||||
name: backup-job
|
||||
namespace: gitlab
|
||||
spec:
|
||||
schedule: "0 4 * * *" # Every day at 4AM
|
||||
concurrencyPolicy: Forbid
|
||||
jobTemplate:
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
containers:
|
||||
- name: maria-backup
|
||||
image: mariadb
|
||||
command: ["sh", "-c", "echo hi"]
|
||||
volumeMounts:
|
||||
- name: gitlab-backup
|
||||
mountPath: /backup/gitlab
|
||||
subPath: gitlab
|
||||
volumes:
|
||||
- name: gitlab-backup
|
||||
persistentVolumeClaim:
|
||||
claimName: gitlab-backup-pvc
|
||||
restartPolicy: OnFailure
|
@ -18,7 +18,7 @@ spec:
|
||||
nodeName: slave-1
|
||||
containers:
|
||||
- name: gitlab
|
||||
image: gitlab/gitlab-ce:15.4.2-ce.0
|
||||
image: git.halia.dev/athens-school/gitlab:15.5.0-amd64
|
||||
ports:
|
||||
- containerPort: 80
|
||||
volumeMounts:
|
||||
|
Loading…
Reference in New Issue
Block a user