Inherited Gitlab-ee on docker swarm. Errors after trying to upgrade

I’ve inherited a Docker Swarm setup of Gitlab-ee and I’ve been trying to update it. I followed the recommended upgrade path (as described at Upgrading GitLab | GitLab), switching between image versions from Dockerhub for each incremental upgrade.

When upgrading from 12.10.14 to 13.0.14 I got a failure of some sort (that I failed to take note of). The container wouldn’t start. I turned replication down to zero, checked the config, and then tried updating the stack again. Same thing.

At this point I attempted to revert to 12.10.14 just to get it running again. Except now it won’t start at all and I’m getting the errors below.

I now get the same errors regardless of what image version I pull. I haven’t changed any non-ephemeral files or settings. These errors look like it has a problem with something that’s inside the container. Any thoughts?

Errors

Recipe: gitlab::gitlab-rails

  • execute[clear the gitlab-rails cache] action run (skipped due to not_if)

Running handlers:

There was an error running gitlab-ctl reconfigure:

Multiple failures occurred:

  • Errno::ENOENT occurred in chef run: template[/var/log/gitlab/redis/config] (/opt/gitlab/embedded/cookbooks/cache/cookbooks/runit/libraries/provider_runit_service.rb line 136) had an error: Errno::ENOENT: No such file or directory @ realpath_rec - /opt/gitlab/sv/redis/log/config

  • Errno::ENOENT occurred in delayed notification: ruby_block[restart_log_service] (/opt/gitlab/embedded/cookbooks/cache/cookbooks/runit/libraries/provider_runit_service.rb line 69) had an error: Errno::ENOENT: template[/var/log/gitlab/redis/config] (/opt/gitlab/embedded/cookbooks/cache/cookbooks/runit/libraries/provider_runit_service.rb line 136) had an error: Errno::ENOENT: No such file or directory @ realpath_rec - /opt/gitlab/sv/redis/log/config

Running handlers complete

Additional background information:

  • volumes:
    - etc:/etc/gitlab
    - log:/var/log/gitlab
    - data:/var/opt/gitlab
    - secretbackups:/secret/gitlab/backups
  • Running under Docker Swarm, managing most stuff via Portainer.
  • The Gitlab container is currently the only one on the node and it’s not lacking in resources.
1 Like