For the database part, I eventually found the configuration file that includes an example on how to specify the database options, so I took care of that part (MySQL - I already had it running in a container).
PS. Is there a way to access the BTCPayServer only by IP address because domain names are not going to be visible from my K8s pod. With IP addresses I can just do port forwarding and then use the hostname of one of my nodes as the domain name.
If you plan to access it only from your home network than should work.
https://docs.btcpayserver.org/Deployment/DynamicDNS/It's going to process payments for my website
https://notatether.com . Definitely not for home use.
I just realized that BTCPayServer doesn't even let you log in on HTTP connections so my idea wouldn't work out anyway. I ended up hosting it directly on the metal with an Nginx reverse proxy and Certbot for HTTPS certificates.
Have you tried btcpay-setup.sh script which supposed to setup everything it needed to start BTCPay server[1]? Based on it's dockerfile, it already include postgres[2].
I was trying to avoid the setup script for as long as possible because it was going to configure a lot of stuff I didn't want - eg. Systemd services, exposing random stuff - by my definition - directly on the host with nginx and localhost ports, and extra containers on my system I don't want (because the ultimate goal was to host this on K8s - The cluster only runs stuff inside it) with no undo option.
I ideally wanted a single container where all of the full nodes, Lightning, NBXplorer and BTCPay stuff shared the same image, because I could not resolve the errors of "service ports not accessible from different containers" issue without the setup script - which as I mentioned is irreversible and installs additional stuff which I was not comfortable with it automatically doing.
I eventually had to compromise by running the nodes, NBXplorer, BTCPayServer and Nginx separately - without containers (
result). True, I don't have autoupdate, but the more I think about it, I really
don't want to give random software my SSH login details.