Well, I figured it out:
I copy the downloaded certificates from NPM (look in the ‘SSL Certificates’-tab for this one) and use the ‘fullchain.pem’ from these and ‘privkey.pem’. Bot of them need to be copied to, in my case:
/opt/mailcow-dockerized/data/assets/ssl
Then I rename the fullchain.pem to cert.pem and privkey.pem to key.pem (I leave the originals, because you’ll need them later on.)
Now in mailcow.conf set SKIP_LETS_ENCRYPT=y (so set it to ‘y’ instead of ‘n’)
Then you first need to bring down all containers from the directory where docker-compose.yml is:
docker compose down
Then bring up the containers again:
docker compose up -d
If all went well then you have https enabled on the domain where the nginx module of mailcow has been made reachable through the NPM dashboard.
If you update Mailcow, then don’t forget to copy/rename the certificates again to cert.pem and key.pem, because they still will be overwritten on first start of the containers.
My flow is:
./update.sh
wait for containers to be up,
docker compose down
rename certificates in data/assets/ssl
go back to install directory with docker-compose.yml
docker-compose up -d
Hope everything will work out for you. There might be a more elegant way to do this, but I don’t know and this one works.