Ich habe hier Gitlab auf einem RS 1000 (G8) laufen. Das funktioniert soweit problemlos. Sind jetzt aber auch nicht so viele User. Sind mittlerweile etwa 200 Projekte, davon einige mit aktivierter CI. Die Runner dafür laufen in meinen Kubernetes Clustern. Hauptsächlich nutze ich das um Container Images zu bauen oder Latex Files zu kompilieren.
Die "großen" Daten habe ich soweit in einen S3 Object Store (Minio) ausgelagert, darunter auch die Registry (die am meisten Platz beansprucht). Das läuft zwar momentan auch auf dem gleichen Server wie die Gitlab Instanz, weil es von den Ressourcen aktuell locker ausreicht, so kann ich es aber jederzeit auslagern, falls es doch mal zu Engpässen kommen sollte. Das kann ich an dieser Stelle sehr empfehlen. So bleibt man direkt von Anfang an flexibel.
Ich überlege immer mal wieder, ob man das nicht auch irgendwie schlanker bauen könnte (Gitea, Drone.io, Registry), aber in Summe dürfte das nicht so viel weniger Ressourcen in Anspruch nehmen als ein Gitlab. Ich habe aber auch einige interne Dienste deaktiviert (Prometheus, Grafana, etc.), weil ich sie eh nie genutzt habe. Das hilft u.U. auch etwas. Daher bleibe ich dann doch lieber bei Gitlab. Eine zweite Gitea Instanz läuft hier sowieso (als Git Mirror, weil die kostenlose Version von Gitlab das nicht kann). Das ist dann gleichzeitig noch eine Art Backup, was so ganz nett ist.
Ich würde daher einen RS 1000 (G9) als Einstieg empfehlen. Der sollte sich ja dann bei Bedarf auch über das CCP problemlos upgraden lassen, wenn doch mal die Ressourcen knapp werden sollten. Ein RS sollte es meiner Meinung nach aber schon sein.