{"id":1086,"date":"2023-11-29T21:30:58","date_gmt":"2023-11-29T20:30:58","guid":{"rendered":"https:\/\/www.glub.biz\/?p=1086"},"modified":"2023-11-26T23:49:56","modified_gmt":"2023-11-26T22:49:56","slug":"distrobox-la-herramienta-de-contenedores-que-permite-ejecutar-distribuciones-facilmente","status":"publish","type":"post","link":"https:\/\/www.glub.biz\/?p=1086","title":{"rendered":"Distrobox, la herramienta de contenedores que permite ejecutar distribuciones f\u00e1cilmente"},"content":{"rendered":"<p><strong>Aprovechando el reciente lanzamiento de la versi\u00f3n 1.6.0, en esta ocasi\u00f3n presentaremos y mencionaremos los aspectos m\u00e1s b\u00e1sicos de Distrobox, que seg\u00fan su documentaci\u00f3n oficial \u201ces un envoltorio (wrapper) elegante para Podman, Docker o Lilipod\u201d. Y permite \u201ccrear e iniciar contenedores altamente integrados con los hosts\u201d.<\/strong><img decoding=\"async\" src=\"https:\/\/www.glub.biz\/media\/images\/2023\/distrobox.jpg\" alt=\"Distrobox\" class=\"alignnone size-medium\" width=\"480\"><\/p>\n<p>Dicho de una manera que suene un poco menos \u00e1spera, Distrobox proporciona un entorno basado en Open Container Initiative (OCI) y que permite crear contenedores basados en muchas distribuciones con acceso al directorio de usuario, los sockets de Wayland y Xorg, redes, dispositivos extra\u00edbles como unidades USB, el journal de systemd, el agente de SSH, D-Bus y m\u00e1s cosas. Frente al uso de Podman y Docker y desde la perspectiva de un usuario de escritorio, destaca por facilitar la ejecuci\u00f3n de aplicaciones y componentes gr\u00e1ficos dentro de un contenedor.<!--more--><\/p>\n<p>En la \u00faltima d\u00e9cada, sobre todo a partir de la expansi\u00f3n de Docker, el uso de los contenedores se ha popularizado mucho como forma de poner en funcionamiento m\u00faltiples instancias de un sistema operativo en una misma m\u00e1quina sin tener que emplear la gran cantidad de recursos que necesita una m\u00e1quina virtual.<\/p>\n<p>Por otro lado est\u00e1 el ascenso de sistemas operativos inmutables como openSUSE MicroOS (en un futuro Aeon y Kalpa), Fedora Silverbue y Endless, que se apoyan fuertemente en los contenedores como medio adicional para separar las aplicaciones del sistema operativo y para la obtenci\u00f3n de entornos mutables con privilegios locales. Nada impide usar Distrobox sobre un sistema Linux \u201ctradicional\u201d y mutable, pero ah\u00ed los casos de uso se limitan debido a que el usuario puede modificar desde un principio el sistema base a su voluntad.<\/p>\n<p>Distrobox tiene un rival, Toolbox, el cual es similar, pero con el foco m\u00e1s puesto en OSTree en general, el mecanismo de actualizaciones at\u00f3micas mediante el cual sistemas como Fedora CoreOS, Fedora IoT, Silverblue y Endless adquieren la inmutabilidad, y el ecosistema de Red Hat en particular, as\u00ed que se encuentra preinstalado en los sistemas proporcionados por el proyecto Fedora (s\u00ed, tambi\u00e9n los mutables).<\/p>\n<p>A pesar de las similitudes, Distrobox termina siendo m\u00e1s f\u00e1cil para un novato gracias a un ecosistema m\u00e1s abierto que facilita la configuraci\u00f3n de contenedores de distribuciones diferentes a la presente localmente y a una curva de aprendizaje m\u00e1s suave. Aunque est\u00e1 disponible desde los repositorios de muchas distribuciones debido a que es software libre, una manera f\u00e1cil de disponer de \u00e9l out of the box es emplear openSUSE MicroOS, donde est\u00e1 de forma preinstalada, as\u00ed que este va a ser el sistema que vamos a emplear para mostrar las partes b\u00e1sicas.<\/p>\n<p><strong>Partes b\u00e1sicas de la creaci\u00f3n de contenedores con Distrobox<\/strong><\/p>\n<p>El prop\u00f3sito de este art\u00edculo no es convertir a nadie en un experto, pero s\u00ed ense\u00f1ar lo b\u00e1sico para que un usuario pueda defenderse con Distrobox y qui\u00e9n sabe, puede que con un poco de imaginaci\u00f3n sea capaz de darle alguna utilidad, cosa que es f\u00e1cil de encontrar cuando descubre la enorme flexibilidad que aporta en materia de herramientas para programaci\u00f3n, ya que es posible tener un entorno estanco como el de Debian Stable sobre un sistema bleeding edge como lo es openSUSE MicroOS.<\/p>\n<p>La forma m\u00e1s sencilla de crear un contenedor en Distrobox es la siguiente:<\/p>\n<p><span style=\"color: #ff0000;\">distrobox-create<\/span><\/p>\n<p>En este caso, el resultado es la creaci\u00f3n de un contenedor basado en openSUSE Tumbleweed, al cual se accede directamente justo despu\u00e9s y de forma autom\u00e1tica. Una peculiaridad de Distrobox es que a\u00f1ade una entrada en el lanzador del sistema anfitri\u00f3n para acceder directamente a cada contenedor creado con \u00e9l, lo cual resulta c\u00f3modo y f\u00e1cil para cualquier usuario.<\/p>\n<p>Si el usuario quiere identificar mejor los contenedores que va creando, puede asignarles un nombre con el argumento &#8211;name.<\/p>\n<p><span style=\"color: #ff0000;\">distrobox-create &#8211;name contenedor2<\/span><\/p>\n<p>Al primer contenedor se la ha asignado de manera autom\u00e1tica el nombre de tumbleweed, as\u00ed que para acceder a \u00e9l hay que hacer lo siguiente (tambi\u00e9n vale la entrada creada en el lanzador del sistema anfitri\u00f3n):<\/p>\n<p><span style=\"color: #ff0000;\">distrobox-enter &#8211;name tumbleweed<\/span><\/p>\n<pYa dentro del contenedor de Tumbleweed, es posible instalar paquetes mediante Zypper. Por ejemplo, aqu\u00ed instalamos el compilador GCC.>\n<p><span style=\"color: #ff0000;\">sudo zypper install gcc<\/span><\/p>\n<p>Para salirse es tan sencillo como ejecutar el comando exit, pero esto no detiene el contenedor, sino que devuelve el foco al sistema anfitri\u00f3n mientras el contenedor sigue ejecut\u00e1ndose en segundo plano. Si se quiere detener un contenedor en ejecuci\u00f3n hay que introducir lo siguiente despu\u00e9s de exit:<\/p>\n<p><span style=\"color: #ff0000;\">distrobox-stop tumbleweed<\/span><\/p>\n<p>Para acceder al segundo contenedor creado la l\u00f3gica es pr\u00e1cticamente la misma, pero cambiando el nombre de tumbleweed por el de contenedor2:<\/p>\n<p><span style=\"color: #ff0000;\">distrobox-enter &#8211;name contenedor2<\/span><\/p>\n<p>La orden exit sirve para devolver el foco al sistema anfitri\u00f3n (o cerrar la ventana con la l\u00ednea de comandos si se ha utilizado la entrada del lanzador) y para detener el contenedor de verdad se ejecuta esto:<\/p>\n<p><span style=\"color: #ff0000;\">distrobox-stop contenedor2<\/span><\/p>\n<p><strong>Qu\u00e9 novedades ha tra\u00eddo Distrobox 1.6?<\/strong><\/p>\n<p>Distrobox 1.6 ha tra\u00eddo como novedades principales el soporte para Lilipod; una mejor integraci\u00f3n con NVIDIA, principalmente CUDA; mejoras en el manejo desde la shell del usuario, por lo que ahora siempre se respeta el chsh hecho dentro del contenedor; los contenedores con permisos de root configuran correctamente la contrase\u00f1a de usuario para sudo; mejoras para los soportes de sytemd y OpenRC; adem\u00e1s de otras cosas.<\/p>\n<p>Fuentes: <a href=\"https:\/\/www.muylinux.com\/2023\/11\/22\/distrobox-contenedores-distribuciones\/\" target=\"_blank\" rel=\"noopener noreferrer\">MuyLinux<\/a> y <a href=\"https:\/\/www.linuxparty.es\/115-docker\/11033-distrobox-ejecute-cualquier-distribucion-de-linux-dentro-de-la-terminal-de-linux.html\" target=\"_blank\" rel=\"noopener noreferrer\">LinuxParty<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Aprovechando el reciente lanzamiento de la versi\u00f3n 1.6.0, en esta ocasi\u00f3n presentaremos y mencionaremos los aspectos m\u00e1s b\u00e1sicos de Distrobox, que seg\u00fan su documentaci\u00f3n oficial \u201ces un envoltorio (wrapper) elegante para Podman, Docker o Lilipod\u201d. Y permite \u201ccrear e iniciar &hellip; <a href=\"https:\/\/www.glub.biz\/?p=1086\">Sigue leyendo <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[],"class_list":["post-1086","post","type-post","status-publish","format-standard","hentry","category-noticias"],"_links":{"self":[{"href":"https:\/\/www.glub.biz\/index.php?rest_route=\/wp\/v2\/posts\/1086","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.glub.biz\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.glub.biz\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.glub.biz\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.glub.biz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1086"}],"version-history":[{"count":1,"href":"https:\/\/www.glub.biz\/index.php?rest_route=\/wp\/v2\/posts\/1086\/revisions"}],"predecessor-version":[{"id":1087,"href":"https:\/\/www.glub.biz\/index.php?rest_route=\/wp\/v2\/posts\/1086\/revisions\/1087"}],"wp:attachment":[{"href":"https:\/\/www.glub.biz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1086"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.glub.biz\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1086"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.glub.biz\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1086"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}