gitlab-ctl reconfigure fails on sysctl because /sys is readonly
Summary
There have been two reports of the same issue previously (#788 (closed) and #1308 (closed)) and they both have been closed so I'm creating another one now because this is still a problem, and the suggested workarounds do not work. The Omnibus package has a README file which covers some installation issues, and this one is one of them. The suggested fix is to set the sysctl values on the host machine to the same values gitlab expects them to be. It is being said that doing that will make the container inherit from those values and the gitlab-ctl reconfigure would then work since the values would already be set to the expected value. This is not true, at least not on my system (a regular, and up-to-date Debian 9).
As an example, gitlab tries to set kernel.shmmax to 17179869184. I have set it to 17179869184 on my host, and when I start a container, /proc/sys/kernel/shmmax always contains 18446744073692774399. Running gitlab-ctl reconfigure will therefore always fail, no matter what the value is on the host, unlike what the README says, and it makes it impossible to install gitlab in a container (without patching the Chef scripts which sounds like a bad idea for a production system anyway).
Steps to reproduce
- Create a Debian container with LXC or systemd-nspawn and install Gitlab with the Omnibus package.
- Run gitlab-ctl reconfigure
What is the current bug behavior?
It will complain that it can't set some systcls due to a read-only filesystem and fail.
What is the expected correct behavior?
gitlab-ctl reconfigure should not fail and ignore failures to set systcls, or at least have an option to skip the sysctl commands in case of container deployments.
Details of package version
Provide the package version installation details
Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-=============================-===================-===================-=============================================================== un gitlab-ce (no description available) ii gitlab-ee 11.6.2-ee.0 amd64 GitLab Enterprise Edition (including NGINX, Postgres, Redis)
Environment details
- Operating System:
Debian 9
- Installation Target, remove incorrect values:
- Other:
Container (LXC or systemd-nspawn)
- Other:
- Installation Type, remove incorrect values:
- New Installation
- Is there any other software running on the machine:
no
- Is this a single or multiple node installation?
- Resources
- CPU:
Intel(R) Xeon(R) CPU D-1531
- Memory total:
32GB
- CPU: