Quiero entregar mi aplicación a los clientes en forma de imagen acoplable. Pero es crucial asegurarse de que el usuario final no altere nada dentro del contenedor. El usuario solo debe poder ejecutar / detener el contenedor e interactuar con el contenedor a través de la red.
¿Es posible prohibir el acceso a la parte interna del contenedor? ¿Es posible verificar la integridad de la imagen del contenedor?
Respuestas:
En resumen, no puede evitar que sus clientes modifiquen los contenedores que ejecutan en su propia infraestructura. Los contenedores no son como binarios que pueden ofuscarse; Son entornos de tiempo de ejecución. Sin embargo, el código que distribuye dentro del contenedor puede ofuscarse.
Su pregunta alude a un problema de soporte de terceros: clientes que modifican el software que ejecutan en sus propios entornos. Si proporciona herramientas para operar los contenedores que suministra (por ejemplo, monitoreo y registro), los clientes deben acordar (como parte de una licencia de software) no realizar modificaciones no autorizadas en ellos. Esto se aplica a todos los tipos de software de terceros, no solo a los contenedores.
Dependiendo de su situación, también puede tener la opción de proporcionar su aplicación como Software As A Service (SaaS) ejecutándose en una infraestructura en la nube.
Si su cliente requiere que sus contenedores se ejecuten en su infraestructura, y se niega a cumplir con las restricciones de modificación, entonces probablemente no quiera intentar apoyar el uso de su software.
fuente
Docker no proporciona ningún medio para impedir el acceso de los usuarios al contenedor, sin embargo, como desarrollador de imágenes, podría seguir algunas estrategias
Por supuesto, siempre pueden exportar el contenedor y reempacarlo, pero esas son medidas extremas ...
fuente
Puede eliminar los usuarios del grupo acoplable y crear sudos para el
docker start
ydocker stop
.fuente
Si su cliente está listo para invertir dinero, entonces debería usar Docker Enterprise Edition. En Docker EE tiene una herramienta que es
UCP(Universal Control Plane)
UCP . Por UCP puede crear roles y derechos de acceso y restringir al usuario para cambiar / modificar contenedores.Si desea probar UCP que DDC (Docker Data Center) con una licencia de prueba de un mes, lo que lo ayudará a elaborar las cosas según sus requisitos.
Espero que esto ayude!
¡Gracias!
fuente
Dé su entrega a través de guiones ansibles. Mantenga todo tipo de restricciones y comprobaciones en el script ansible.
fuente