executor/gitlab_runner_config: allow caching on gateway runners
This was a feature I removed in 47c090be ("executor/gitlab_runner_cfg: drop the now-unused /cache volume") because we did not use it, and also because it would never have been doing anything useful when it was introduced as the gitlab runner was running in a container itself... so /cache would be fresh every single time.
This time around, I decided to use a volume to back /cache. This way, no nasty surprises about privileges whenever we'll move the gitlab runner to be running as a user.