Tengo varias imágenes base de la ventana acoplable que no son de mi propiedad (por lo que no puedo modificarlas). Sin embargo, estoy creando nuevas imágenes a partir de ellas con cosas adicionales instaladas.
Lo que no puedo entender es cómo decirle a dockerfile que copie el CMD (o ENTRYPOINT) de la imagen base. Algo como esto:
FROM other:latest RUN my-extra-install CMD <use-the-CMD-from-base-image>No creo que haya ninguna sintaxis directa para que el comando CMD haga lo que quiero. Me pregunto si hay una solución.
Si lo dejó en blanco en su nuevo Dockerfile, heredará el de la imagen base.
Por ejemplo:
base
FROM ubuntu CMD ["echo", "AAA"]capa1
FROM base Si crea las imágenes anteriores y ejecuta la layer1 , obtendrá lo siguiente:
$ sudo docker run -it layer1 AAA@Vor tiene razón. pero en caso
# Dockerfile FROM nginx:stable-alpine ENTRYPOINT ["/docker-entrypoint.sh"] COPY ./docker-entrypoint.sh /y
# docker-entrypoint.sh #!/usr/bin/env sh set -e exec "$@" el CMD predeterminado de nginx:stable-alpine no se ejecutará en exec "$@" .
Debe escribir el CMD predeterminado de nginx-alpine usted mismo (!) En Dockerfile
# Dockerfile FROM nginx:stable-alpine ENTRYPOINT ["/docker-entrypoint.sh"] CMD ["nginx", "-g", "daemon off;"] COPY ./docker-entrypoint.sh /O cambie su docker-entrypoint.sh
# docker-entrypoint.sh #!/usr/bin/env sh set -e exec nginx -g "daemon off;"Espero eso ayude