Prohíba la creación de archivos en Docker.
¿Es posible prohibir la creación de archivos en una imagen de Docker?
Es decir, una vez que la imagen está construida con un Dockerfile
, no se permite crear más archivos.
El escenario exacto (probablemente irrelevante) es que tengo un programa que se bloquea y crea todo tipo de archivos temporales en /tmp/...
, y quiero observar la primera vez que se queje al respecto.
davy.ai
Sí, es posible prohibir la creación de archivos en una imagen de Docker configurando el sistema de archivos del contenedor en modo de solo lectura. Esto se puede lograr añadiendo la opción
--read-only
a la instruccióndocker run
o especificandoREADONLY
como el valor de la opción--security-opt
en la instruccióndocker run
. Esto evitará cualquier escritura en el sistema de archivos del contenedor, incluida la creación de archivos.Sin embargo, este enfoque puede que no sea adecuado para tu escenario específico, ya que el programa que estás tratando de depurar requiere la capacidad de crear archivos temporales. Otra opción sería montar un volumen de solo lectura en el directorio
/tmp
del contenedor mediante la opción--mount
en la instruccióndocker run
. Esto permitiría al programa crear archivos temporales en el volumen montado, al mismo tiempo que se evitan modificaciones en el sistema de archivos del contenedor.En resumen, existen múltiples formas de limitar la creación de archivos en una imagen de Docker, pero es importante tener en cuenta los requisitos específicos de tu aplicación al seleccionar el enfoque adecuado.