The rest worked great and fast (~5 minutes I'd say). I am currently looking into persistent volume solutions, Rook.io looks good but is still beta. Ingress is another thing I have to look into, probably just port forwarding from my router to one of the nodes running the controller.
The nodes are Ubuntu 16.04 with docker installed from the repos.
Rook is doing OK for me so far, but be warned, the api is seemingly quite volatile at the moment
For ingress on bare metal (I assume that is what you are using), either nginx-ingress (for rest protocols) or metallb for arbitrary ones.
I run Gitea since the goal there seems to be more like Github while Gogs seems to aim more for a Gitlab-Light experience.
At the time when I compared to Gogs, I read about a period where the Gogs maintainer was off, and PR's were piling up. Not sure, but that may have been the reason to create Gitea fork at the time. The project has multiple maintainers, and when I compared activity (about 8 months ago), it was more active in terms of PR's and commits.
Most of the core stuff is the same, so for simple git repo hosting I don't think it matters.
* GitLab (GitHub + CI/CD replacement)
* FreeNAS (Storage server)
* Nextcloud (Dropbox replacement)
* Syncthing (Dropbox replacement, Nextcloud did not work properly on my android phone)
* In progress: Kubernetes cluster (just for fun, RKE + rook.io)
* My own notes/wiki/task tracker I will release real soon now (TM)
Thinking about setting up Gitea + Drone.io, GitLab is just too heavyweight for just using it as git Hosting + CI/CD.