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.