I'm trying to install and host gitlab, but it requires and pulls in Nginx. Which would be fine, except I use Caddy and Caddy doesn't play well with Nginx and has to be disabled for Nginx to even start.
I like Caddy a lot, especially the built in file server, so just switching completely to Nginx isn't an option. I also have no interest in trying to do firewall redirects to try to use Nginx on a nonstandard port.
Is there any way to use gitlab without nginx, eg Caddy? There's no official documentation and the last thing I tried from an online forum completely broke my gitlab install and only pertained to Apache which I'm not using
My system is a dedicated cloud server running Ubuntu 20.04.
I finally figured it out.
GitLab doesn't listen on a port but a Unix socket. Luckily we can configure Caddy to reverse proxy to the socket in the Caddyfile like so:
Make sure
caddy
user is ingit
andgitlab-www
groups and vice versa.In /etc/gitlab/gitlab.rb make sure these are configured as such:
Then do
I've only tested with the official caddy and GitLab-EE packages on Ubuntu 20.04, and don't configure Caddy via API, but this should work for standard installs of GitLab.
The answer from unixandria is correct for when it's from. Things have changed a little since then.
There's now this official section on GitLab Docs.
Also, GitLab 13.5 changed the location of the unix socket, so the Caddyfile should have this now: