Solución:
Probablemente no tenga los certificados de CA correctos disponibles en el contenedor, por lo que las conexiones TLS no se pueden verificar.
Intenta instalar ca-certificates
paquete (el paquete puede tener un nombre diferente, depende de la distribución utilizada).
ACTUALIZAR:
Su empresa inspecciona las conexiones TLS en la red corporativa, por lo que los certificados originales se reemplazan por los certificados de su empresa. Debe agregar el certificado CA de su empresa a los certificados CA raíz.
Linux (Ubuntu, Debian):
- copiar el certificado de CA de la empresa al directorio
/usr/local/share/ca-certificates/
- correr
sudo update-ca-certificates
Si su sistema operativo host ya ha preconfigurado los certificados de CA correctamente (se incluyen los certificados de CA de la empresa), puede montarlos como un volumen en el contenedor:
docker run
-v /etc/ssl/certs/ca-certificates.crt:/etc/ssl/certs/ca-certificates.crt
...
Ubicaciones típicas de certificados de CA:
-
/etc/ssl/certs/ca-certificates.crt
Debian / Ubuntu / Gentoo, etc. -
/etc/pki/tls/certs/ca-bundle.crt
Fedora / RHEL 6 -
/etc/ssl/ca-bundle.pem
OpenSUSE -
/etc/pki/tls/cacert.pem
OpenELEC -
/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem
CentOS / RHEL 7
Bien, acabo de agregar esta declaración y ahora funciona bien.
CURLOPT_SSL_VERIFYPEER => 0,