Bitwarden is a great password manager that is packed full of features. I’ve been paying the $10 pa for the hosted version as it is really reasonable (and I help sustain the Bitwarden open source project), and the data is anyway all fully encrypted and not readable by Bitwarden.
But there is also an unofficial fork of it called Vaultwarden, which you can self-host if you want to. The linked article explains step by step how to set it up in a Docker container. Just remember that you will want to be sure you are backing up this data properly, as this is your primary source of data to access your hundreds (or more) of online services.
One thing just to check, before diving in, is how Vaultwarden will migrate to using passkeys, as that is something I’m eagerly awaiting from Bitwarden.
See https://linuxiac.com/how-to-install-vaultwarden-password-manager-with-docker/