Back up GitLab running in a Docker container
DETAILS: Tier: Free, Premium, Ultimate Offering: Self-managed
You can create a GitLab backup with:
docker exec -t <container name> gitlab-backup create
For more information, see Back up and restore GitLab.
NOTE:
If your GitLab configuration is provided entirely using the GITLAB_OMNIBUS_CONFIG
environment variable
(by using the "Pre-configure Docker Container" steps),
the configuration settings are not stored in the gitlab.rb
file so you do not need
to back up the gitlab.rb
file.
WARNING:
To avoid complicated steps when recovering
GitLab from a backup, you should also follow the instructions in
Backing up the GitLab secrets file.
The secrets file is stored either in the /etc/gitlab/gitlab-secrets.json
file inside the container or in the
$GITLAB_HOME/config/gitlab-secrets.json
file on the container host.
Create a database backup
Before you upgrade GitLab, create a database-only backup. If you encounter issues during the GitLab upgrade, you can restore the database backup to roll back the upgrade. To create a database backup, run this command:
docker exec -t <container name> gitlab-backup create SKIP=artifacts,repositories,registry,uploads,builds,pages,lfs,packages,terraform_state
The backup is written to /var/opt/gitlab/backups
which should be on a
volume mounted by Docker.
For more information on using the backup to roll back an upgrade, see Downgrade GitLab.