dockerc - Herramienta para compilar imágenes de Docker en binarios portables independientes
(github.com/NilsIrl)- Una herramienta para compilar imágenes de Docker en binarios independientes y portables
- Permite ofrecer a los usuarios binarios ejecutables sin comandos como
docker run,pip installonpm i
Características
- Compila imágenes de Docker en binarios portables.
- Contenedores que no requieren privilegios de root.
- Soporte para MacOS y Windows (usando QEMU): próximamente
- Soporte para x86_64 (soporte para arm64 próximamente)
- Soporte para argumentos
- Soporte para especificar variables de entorno con
-e. - Soporte para especificar volúmenes con
-v.
Cómo usarlo
- Instalar dockerc desde la versión más reciente.
- Generar el binario de salida usando una imagen de Docker Hub o una imagen del repositorio del daemon local de Docker.
- El binario generado puede invocarse como un binario normal.
- Las opciones
-ey-vpueden especificarse de la misma forma que al usardocker run. - Se puede acceder directamente a los servicios de red que se ejecutan dentro del contenedor, sin necesidad de especificar
-p. - Para cargar imágenes se usa Skopeo; para otras ubicaciones, consultar su documentación.
Opinión de GN⁺
- dockerc es una herramienta que puede mejorar mucho la usabilidad de Docker, ya que permite a los usuarios ejecutar aplicaciones sin procesos de instalación complejos. Esto puede ser especialmente útil para usuarios no técnicos.
- La función de compilar imágenes de Docker en binarios simplifica la distribución y el despliegue, lo que ofrece ahorro de tiempo y eficiencia para desarrolladores y administradores de sistemas.
- Sin embargo, para que esta tecnología sea adoptada de forma amplia, deben resolverse suficientemente los problemas relacionados con seguridad, rendimiento y compatibilidad. Por ejemplo, es necesario verificar si los binarios compilados son tan seguros como la imagen original de Docker y si funcionan sin problemas en todos los sistemas.
- Otro proyecto que ofrece funciones similares a Docker es Podman, que permite ejecutar contenedores sin privilegios de root.
- Al adoptar dockerc, conviene considerar la integración con los flujos de trabajo existentes de Docker, la forma de actualizar y gestionar las imágenes, así como el tamaño y el rendimiento de los binarios compilados. Las ventajas de elegir esta tecnología son la simplificación del despliegue y la facilidad de uso, pero también hay que evaluar cuidadosamente el overhead que puede surgir en el proceso de compilación y los posibles problemas de compatibilidad.
2 comentarios
Oh, bastante interesante.
Comentarios de Hacker News
Esto es realmente genial.
En el pasado usé y recomendé nix-bundle¹ o su contraparte oficial,
nix bundle².nix bundlepuede crear no solo ejecutables pesados, sino también imágenes de Docker, AppImages y algunos otros formatos de imagen/ejecutable.Es realmente bueno volver a los ejecutables portátiles con un OS integrado.
El usuario está esperando a que la gente empiece a enviar Dockerfiles que generen contenedores de Docker para ejecutar estas cosas.
Aquí hay una gran ironía cósmica.
¡Qué gran avance, Nils! Me alegra ver el progreso del proyecto desde que hablamos en AGI House.
Siguen haciendo falta cosas distintas para otras arquitecturas.
¡Buena idea! ¿Cómo funciona esto en realidad?
Está genial que hayan usado el dibujo del rant.
¿Qué significa esto? ¿Que los usuarios podrán distribuir un ejecutable portátil de Ruby sin instalar Ruby?