Herramientas

(Herramientas no es un tipo, consulte la página del proyecto)

Como un host inmutable, Fedora Silverblue es una plataforma excelente para desarrollo basado en contenedores y, para trabajar con contendedores, se recomiendan buildah y podman.

Fedora Silverblue además viene con la utilidad herramientas, la cual utiliza contenedores para proporcionar un entorno donde desarrolla herramientas y bibliotecas que pueden ser instaladas y utilizadas.

¿Por qué utilizar las herramientas toolbx?

Toolbx facilita utilizar un entorno contenedor para desarrollo de software y depuración durante todos los días. En sistemas operativos inmutables, como https://silverblue.fedoraproject.org/ [Fedora Silverblue], proporciona un entorno basado en paquetes familiar en el cual las herramientas y bibliotecas pueden ser instaladas y utilizadas. Sin embargo, tootbx además puede utilizarse en sistemas basados en paquetes.

Utilice Toolbx para ejecutar su flujo de trabajo dentro de un contenedor de manera de le proporciona varias ventajas:

  • Si conserva el SO host limpio y estable, y ayuda a evotar la suciedad que pueda suceder tras instalar lotes de herramientas de desarrollo y paquetes.

  • Obtenga acceso a diferentes versiones de distribuciones mantenidas independientemente de la versión que está ejecutando.

  • Los contenedores son una buena manera de aislar y organizar las dependencias necesarias para proyectos diferentes.

  • Los contenedores son un espacio seguro para experimental: si las cosas van mal, es fácil arrojar una toolbox y comenzar de nuevo.

Sin embargo. es muy importante tomar nota de que los contenedores de toolbx aún están interados con su sistema host, por tanto no intentaría hacer cosas o ejecutar software que de otra manera no lo haría en su sistema host. Los contenedores Toolbx no están completamente aislados de los entornos como las máquinas virtuales.

Como funciona

Toolbx toma el trabajo fuera de utilizar contenedores, proporcionando un número pequeño de comandos simples para crear, introducir, listar y retirar contenedores. Además integra contenedores toolbx en su entorno de trabajo habitual, para hacerlo más fácil para usted los utilice como espacio de desarrollo cada día.

Los contenedores se crean desde imágenes y aquellas versiones de distribuciones usualmente están muy desnudas. En tales imágenes casi no hay disponibles herramientas y documentación. El equipo tras Toolbx mantiene una imagen de Fedora donde tales herramientas y documentación están disponibles, proporcionando una salida buena de la experiencia de caja.

Cada contenedor toolbx es un entorno que puede introducir desde la línea de comando. Dentro de cada uno, encontrará:

  • Su nombre de usuario existente y los permisos

  • Acceso a su directorio inicial y variaos otros lugares

  • Acceder a ambos sistema y sesión de D-Bus, bitácora del sistema y Kerberos

  • Herramientas de líneas de comando comunes, incluyendo un gestor de paquetes (p.e., DNF en Fedora)

En otras palabras, contenedores de toolbx, sienta y crea como un entorno de línea de comandos de Linux estándar. Al conectar toda esta información, los contenedores toolbx pierden una cierta cantidad de seguridad ganada por utilizar la tecnología de los contenedores. Por tanto, no trataría a los contenedores de toolbk como una caja de tierra donde pueda ejecutar cualquier guión que nunca ejecutaría en cualquier otro sistema.

En muchos casos, cuando un comando es ejecutado dentro de un contenedor, el programa desde dentro del contenedor es utilizado. Sin embargo, hay unos pocos casos especiales donde se utiliza el programa en el host en su lugar (utilizando flatpak-spawn). Un ejemplo de esto es el mismo comando toolbox; esto lo hace posible para utilizar toolbx dentro de contenedores toolbx.

Instalación

Fedora Silverblue

Las herramientas Toolbx está pre-instalado en Fedora Silverblue.

Fedora Workstation

Toolbx puede estar instalado en Fedora Workstation (o cualquier versión basada en paquetes de Fedora) con la instrucción siguiente:

$ sudo dnf install toolbox

Su primera toolbox

Una vez que toolbx está instalada, se requieren dos simples comandos para que inicie:

$ toolbox create

Esto descargará una imagen OCI y creará un contenedor toolbx desde él. Una vez que esto está completado, ejecute:

$ toolbox intro

Una vez dentro de la caja de herramientas, puede acceder a la línea de comandos de herramientas, e instale unas nuevas usando un gestor de paquetes (p.e., DNF en Fedora).

Cuando el intérprete esté dentro de una caja de herramientas (toolbox), está preparado con un deamante: esto indica que el intérprete está dentro de un contenedor de toolbx. El símbolo diamante puede no ser presente si utiliza un tema personalizado de la shell.

Comandos y uso

toolbox create [opciones] <nombre>

Crea un contenedor toolbx. Esto descargará una imagen OCI si uno no está disponible (esto es requerido para crear el contenedor). Por defecto una imagen coincide la versión del host que es utilizado. Si el sistema host no tiene una imagen que coincida, se usa en su lugar una imagen Fedora.

Utilizó sin opciones, toolbx create automáticamente nombrará el contenedor que crea. Para crear toolboxes adicionales, utilice el argumento <nombre>.

Para utilizar una versión específica del sistema host (p.ej., Fedora 32 en Fedora 34), utilice la opción --release <release> | -r <release>.

Para utilizar una distribución diferente para crear un contendedor toolbx (p.ej., RHEL en Fedora), utilice la opción --distor <distro> | -d <distro>.

Para utilizar una imagen diferente, utilice la opción --image <nombre> | -i <nombre>.

toolbox intro [opciones] <nombre>

Introduzca un toolbox para uso interactivo. Utilizado sin opciones, toolbox intro abre el toolbox por defecto.

Para utilizar un toolbox con nombre específico, utilice el argumento nombre.

Para introducir un toolbox para una distribución diferente (p.e., Fedora en RHEL), utilice la opción --distro <distro> |-d <distro>.

Para introducir un toolbox con versión específica (p.ej., RHEL 8.1 en RHEL 8.3), utilice la opción --release <publicación> | -r <publicación>.

toolbox run [opciones] <comando> <arg …​>

Ejecuta un comando en un toolbox sin introducirlo. Utilizado sin opciones, toolbox run ejecuta el comando en el toolbox por defecto.

Para ejecutar un comando en un toolbox nombre específico, utilice la opción --container <nombre> | -c <nombre>.

Para ejecutar un comando en un toobox para una distribución diferente (p.e., Fedora en RHEL), utilice la opción --distro <distro> |-d <distro>.

Para ejecutar un comando en un toolbox con versión específica (p.e., RHEL 8.1 en RHEL 8.3), utilice la opción --release <publicación> | -r <publicación>.

toolbox list [opciones]

Listado de imágenes y contenedores de toolbx local.

Para mostrar solo los contenedores, utilice la opción --containers | -c.

Para solo mostrar imágenes, utilice la opción --images | -i.

toolbox rm [opciones] <nombre …​>

Retira uno o más contenedores toolbx.

La opción --force | -f retira los contenedores marcados incluso si están ejecutándose.

La opción --all | -a retira todos los contenedores toolbx.

toolbox rmi [opciones] <nombre …​>

Retira una o más imágenes de toolbx.

La opción --force | -f retira las imágenes marcadas y todos los contenedores que han sido creados utilizando las imágenes marcadas.

La opción all | -a retira todas las imágenes toolbx.

toolbox --help

Muestra la página del manual de Toolbx.

Saliendo de un toolbox

Para volver al entorno del host, ejecute o bien exit o bien quite el intérprete actual (típicamente Ctrl+D).

Bajo el capó

Toolbx utiliza las siguientes tecnologías:

Contactos y asuntos

Para informar sobre asuntos, hacer sugerencias, o contribuir parches, consulte el proyecto GitHub de toolbx.

Para entrar en contacto con los usuarios de toolbx y desarrolladores, utilice acuda al Discurso de Fedora, o únase al canal IRC #silverblue en Libera.