Can also recommend checking out onedev. Seemed much lighter weight to me than gitlab, and it didn't choke when handling large amounts of data like gitea seems to. Not used the CI besides some basic tests, but it looks pretty capable from what I've seen.