If you’d shared your actual commands instead, we might want spotted the issue.
Note: you need to make sure the domain(s)/ip(s) you use to access the service are listed as Subject Alternative Name (SAN) in your x509 certificates used for https. The common name (CN) was deprected long time ago for https usage and nowadays most cllient implementions ignore it and require a SAN that matches your access url instead.
Like I wrote: CN was deprecated long time ago, but was latetly started to be enforced in most programming languages/libraries - you need to get your “subjectAltName” in order.
If I am not mistaken, then openssl x509 -in server.crt -text -noout will have not show this infromation:
X509v3 extensions:
X509v3 Subject Alternative Name:
DNS:domain.com, DNS:host.domain.com
Before you ask how to fix it_ take a look at the links I shared above.
docker --tlscert ./server.crt pull rmt.example.com:5000/ubuntu:latest
Error response from daemon: Get "https://rmt.example.com:5000/v2/": x509: certificate relies on legacy Common Name field, use SANs instead