I have used self-hosted GitLab before, but it’s very complex to set up and maintain (each update has caused varying amounts of pain).
So I have set up a Gitea instance for my personal use. It is very lightweight, comparatively simple to install and update and works very well, for example on a Uberspace.
if you want to find more self hosted options you can find more information on this link: Choosing a Self-Hosted Git Service - paritybit.ca. There are lighter solutions to Gitea, it depends on the features you need.