run compose ssl ssl-certificate docker

compose - docker contenedor ssl certificados



docker run https (3)

Como se sugirió en un comentario anterior , si el almacén de certificados en el host es compatible con el invitado, puede simplemente montarlo directamente.

En un host Debian (y contenedor), lo he hecho con éxito:

docker run -v /etc/ssl/certs:/etc/ssl/certs:ro ...

¿Hay alguna manera elegante de agregar certificados ssl a imágenes que provienen de Docker Pull ?.

Estoy buscando una forma simple y reproducible de agregar un archivo en / etc / ssl / certs y ejecutar update-ca-certificates. (Esto debería cubrir las imágenes de ubuntu y debian).

Estoy usando Docker en CoreOS, y la máquina coreos confía en los certificados ssl necesarios, pero los contenedores docker obviamente solo tienen el valor predeterminado.

Intenté usar docker run --entrypoint=/bin/bash para luego agregar el update-ca-certificates y ejecutar update-ca-certificates , pero esto parece anular permanentemente el punto de entrada.

También me pregunto ahora, ¿sería más elegante simplemente montar /etc/ssl/certs en el contenedor desde la copia de las máquinas anfitrionas? Hacer esto permitiría implícitamente que los contenedores confíen en las mismas cosas que el host.

Estoy trabajando con un proxy molesto que renuncia a todo :(. Lo que rompe SSL y hace que los contenedores sean algo extraños para trabajar.


Estoy tratando de hacer algo similar a esto. Como se comentó anteriormente, creo que le gustaría crear una nueva imagen con un Dockerfile personalizado (utilizando la imagen que extrajo como imagen base), ADD su certificado, luego ejecutar los certificados de RUN update-ca-certificates De esta forma, tendrá un estado constante cada vez que inicie un contenedor desde esta nueva imagen.

# Dockerfile FROM some-base-image:0.1 ADD you_certificate.crt:/container/cert/path RUN update-ca-certificates

Digamos que una compuerta docker build contra ese Dockerfile produjo IMAGE_ID. En el siguiente docker run -d [any other options] IMAGE_ID , el contenedor iniciado por ese comando tendrá su información de certificado. Simple y reproducible.


Monta los certs en el contenedor Docker usando -v :

docker run -v /host/path/to/certs:/container/path/to/certs -d IMAGE_ID "update-ca-certificates"