Gitlab – Backup / Update Steps

To update your GitLab instance to version 17.6, follow these steps:

  1. Review the Release Notes: Familiarize yourself with the new features, bug fixes, and any deprecations in version 17.6.

    GitLab

  2. check rhel
    
    [spiffy-root@spiffydesign ~]$ rpm -E %rhel
    9
    

    Cool — RHEL/Alma 9 means you want the .el9 builds.

    Install targets (in order)
    1. gitlab-ee-18.5.5-ee.0.el9
    2. gitlab-ee-18.8.4-ee.0.el9

  3. Backup Your Data: Before proceeding, ensure you have a complete backup of your GitLab instance to prevent data loss.



  1. Check for Background Migrations: Ensure all background migrations have completed before upgrading.

    GitLab Docs

  2. Determine Your Upgrade Path: If you’re upgrading from an older version, you might need to follow a specific upgrade path.

    GitLab Pages

  3. Upgrade GitLab: Use the appropriate method based on your installation:

    • Omnibus Package:

      • For Debian/Ubuntu:

        
        sudo apt update && sudo apt install gitlab-ee
        
      • For RHEL/CentOS:

        
        sudo yum install gitlab-ee
        
      • For SUSE:

        
        sudo zypper install gitlab-ee
        

      dnf

      To upgrade your GitLab installation on RHEL 8 or 9 using dnf, follow these steps:

      1. Update the Package Repository:

        Ensure your package repository information is up to date:

        
        sudo dnf update
        
      2. Install the Latest GitLab Package:

        Proceed to install the latest version of GitLab:

        
        sudo dnf install gitlab-ee
        

        Note: If you’re using GitLab Community Edition, replace gitlab-ee with gitlab-ce.

      3. Reconfigure GitLab:

        After installation, reconfigure GitLab to apply the new settings:

        
        sudo gitlab-ctl reconfigure
        

      Important Considerations:

      • Backup: Before upgrading, ensure you have a complete backup of your GitLab instance, including repositories, databases, and configuration files.

      • Upgrade Path: If you’re upgrading from an older version, consult the GitLab Upgrade Paths to determine if intermediate upgrades are necessary.

      • Post-Upgrade Checks: After upgrading, verify that all services are running correctly:

        
        sudo gitlab-ctl status
        sudo gitlab-rake gitlab:check
        

      By following these steps, you can successfully upgrade your GitLab instance on RHEL 8 or 9 using dnf.To upgrade your GitLab installation on RHEL 8 or 9 using dnf, follow these steps:

      1. Update the Package Repository:

        Ensure your package repository information is up to date:

        
        sudo dnf update
        
      2. Install the Latest GitLab Package:

        Proceed to install the latest version of GitLab:

        
        sudo dnf install gitlab-ee
        

        Note: If you’re using GitLab Community Edition, replace gitlab-ee with gitlab-ce.

      3. Reconfigure GitLab:

        After installation, reconfigure GitLab to apply the new settings:

        
        sudo gitlab-ctl reconfigure
        

      Important Considerations:

      • Backup: Before upgrading, ensure you have a complete backup of your GitLab instance, including repositories, databases, and configuration files.

      • Upgrade Path: If you’re upgrading from an older version, consult the GitLab Upgrade Paths to determine if intermediate upgrades are necessary.

      • Post-Upgrade Checks: After upgrading, verify that all services are running correctly:

        
        sudo gitlab-ctl status
        sudo gitlab-rake gitlab:check
        

      By following these steps, you can successfully upgrade your GitLab instance on RHEL 8 or 9 using dnf.

      GitLab Docs

    • Docker:

      
      docker pull gitlab/gitlab-ee:17.6.0
      

      GitLab Docs

    • Source Installation: Follow the source upgrade instructions.


      GitLab Docs

  4. Post-Upgrade Checks: After upgrading, verify that all services are running correctly and that your data is intact.


Feb 11 2026 Update



PRE UPDATE CHECKS:

# check rhel
rpm -E %rhel

# confirm current GitLab version
sudo cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
# or
sudo gitlab-rake gitlab:env:info | egrep 'GitLab information|Version'

# (optional but helpful) confirm the exact package strings exist in your configured repo
sudo dnf clean all
sudo dnf --showduplicates list gitlab-ee | egrep '18\.5\.5-ee\.0\.el9|18\.8\.4-ee\.0\.el9' || true

# Update Code base

sudo dnf update

#BACKUP STEPS:
# gitlab-backup create writes into /var/opt/gitlab/backups/ by default. So copy that tar to your safe location too.

sudo gitlab-backup create

# copy the actual backup tar(s) somewhere safe
sudo ls -lah /var/opt/gitlab/backups/
sudo cp -a /var/opt/gitlab/backups/*_gitlab_backup.tar /path/to/backup/location/

# copy config + secrets
sudo cp -a /etc/gitlab/gitlab.rb /etc/gitlab/gitlab-secrets.json /path/to/backup/location/

ALSO SEE: ~/backups/run_gitlab_backup.sh  - used AFTER you run sudo gitlab-backup create
or: run_gitlab_backup_all.sh - does it all makes backup and moves it.
~/backups/run_gitlab_healthcheck.sh 


UPDATE STEPS:

# STOP 1: 18.4.1 -> 18.5.5
sudo dnf install -y gitlab-ee-18.5.5-ee.0.el9
sudo gitlab-ctl reconfigure
sudo gitlab-ctl status
sudo gitlab-rake gitlab:check

# After each hop, confirm GitLab is serving and migrations are done:

sudo gitlab-rake gitlab:background_migrations:status
sudo gitlab-rake db:migrate:status | tail -n 20


# STOP 2: 18.5.5 -> 18.8.4
sudo dnf install -y gitlab-ee-18.8.4-ee.0.el9
sudo gitlab-ctl reconfigure
sudo gitlab-ctl status
sudo gitlab-rake gitlab:check