I think this is actually an issue with the self-signed certificate not being present in the trusted roots of the development machine.
I am running macOS, but the principle is the same on all systems, but you should add your /config/certs/root/ca.cert to your system trusted root certificate store and then restart the Docker service. This will allow your machine to push to the hosted registry within OpenBalena.
You should have the NODE_EXTRA_CA_CERTS set anyway for balena login to work to get this far, so I don’t think it is that, but if not then you should have it set to the cert path too.
At the moment this is not an easy step to enable, but rest assured that we are working on it actively. In the meantime, I think the best way to use a “real”, publicly trusted certificate is as follows:
Setup openBalena in the normal way, using the domain you will have a cert for.
Once the stack is up and running, you will be given a self-signed CA and server certs, as per the guide
Edit the haproxy container source, provided in the repo:
you will want to include your cert/ca/key in a PEM file
you need the Dockerfile to copy it into the container image somewhere
This is obviously very involved and messy at this point. Myself and others are working on making this easier and more intuitive, but at this time I cannot say when it will be ready, sorry.