I am considering using GitLab as an authentication and Git repo service (for my open hardware electronics site kitnic.it). I don't need the front-end at all as I want to write my own front-end that makes use of the API.
I am aware that I can configure Nginx to not give visitors access to the UI but I would also like to cut down on resources (mainly memory) used by GitLab. Can I run GitLab CE as an API only?
I have just installed the omnibus package and played around a little bit but would be willing to go the more manual route if that's required.
Because we have built GitLab as a Ruby-on-Rails application, the decoupling is not as straightforward as you might like. If you wanted to service just the API, from the Omnibus, you would still need to run the entire stack as everything is coupled together in the ecosystem. Requests come in via the Nginx front-end and are handed back into Workhorse for queing and some git functions, Unicorn is needed to parse and act on the requests, as is Sidekiq for queue processing. Redis is what the work queue is stored in and PostgreSQL is the data layer that ties it all together.