Why the hell would you "self-host" a cloud service?
There is no cloud...it's just someone else's computer. If you're not comfortable with your stuff on someone else's computer, that would be good justification for self-hosting. I have a FreeNAS box at home providing ownCloud, Plex, and some other services, as well as some Git repositories (currently without a web interface). Some of my Git repos (especially my Portage overlay) are at GitLab for public access (used to be at GitHub, but I yanked everything off of there after they became SJW-converged).
Right now, the Git repos live within their own jail and are accessed over SSH. I tried bringing up GitLab on my server when it was running Gentoo, but didn't get very far...ISTR their packaging and install docs being somewhat Ubuntu- or Debian-specific.