Si está buscando una alternativa a Docker Desktop o integrando Docker en su flujo de trabajo Multipass, este método de operación es para usted.
multicanal El motor de Docker se puede alojar en la máquina virtual de Ubuntu de forma similar al escritorio de Docker. La instancia de Docker se puede controlar directamente desde la VM o de forma remota desde el host sin software adicional. Esto le permite ejecutar Docker localmente en una máquina Windows o Mac directamente desde el terminal host.
Tabla de Contenidos
Generalizar
En este tutorial, ejecutaremos Docker Hola Mundo El contenedor en Multipass VM proviene de la línea de comandos del host. Con este fin, haremos lo siguiente:
- Instalar Multipass (si aún no está instalado)
- Utilice cloud-init para:
- Cree una máquina virtual multicanal
- Instale el motor de la ventana acoplable en la máquina virtual
- Alias el comando de la ventana acoplable a la línea de comandos del host
- Ejecutar Docker Hola Mundo Contenedor de la terminal de host
Preparar
Primero, instale Multipass yendo a Operación multicanal Y siga las instrucciones de instalación para su sistema operativo.
Ventanas
Primero ejecutaremos algún código de inicio en la nube para configurar la VM. Esto creará una máquina virtual con la última versión de Ubuntu LTS (20.04 en el momento de escribir este artículo) instalada. Esta máquina está configurada con 4 CPU, 4 GB de memoria y 40 GB de disco.Si cree que se necesita una especificación diferente, puede modificar estos pasos como se muestra en la figura aquí.
En PowerShell, ejecute el siguiente código de inicio en la nube para crear una nueva máquina virtual llamada docker-vm e instalar el motor de la ventana acoplable:
@'
groups:
- docker
snap:
commands:
- [install, docker]
runcmd:
- adduser ubuntu docker
'@ | multipass launch --cloud-init - --disk 40G --mem 4G --cpus 4 --name docker-vm
Sistema de Apple
Multipass es una excelente opción para la ventana acoplable en macOS, especialmente M1 Mac. Los pasos aquí son ligeramente diferentes a los de Windows.
Primero ejecutaremos algún código de inicio en la nube para configurar la VM. Esto creará una máquina virtual con la última versión de Ubuntu LTS (20.04 en el momento de escribir este artículo) instalada. Esta máquina está configurada con 4 CPU, 4 GB de memoria y 40 GB de disco.Si cree que se necesita una especificación diferente, puede especificar los recursos disponibles para la VM como se muestra en la figura aquí.
En la terminal, ejecute el siguiente código de inicio en la nube para crear una nueva máquina virtual llamada docker-vm e instalar el motor de la ventana acoplable:
multipass launch --cloud-init - --disk 40G --mem 4G --cpus 4 --name docker-vm <
Alias Peón Pedido
Una vez que la máquina virtual completa el proceso de instalación, se descargará e instalará automáticamente la ventana acoplable en la máquina virtual. Nuestra VM ahora está lista, pero solo podemos acceder a la instancia de Docker desde dentro de la VM. Para el acceso al host, asignamos un alias al comando docker para host, como se muestra a continuación:
multipass alias docker-vm:docker
Si, como yo, ya tiene docker cli en su máquina, puede darle al comando de alias otro nombre para que no entre en conflicto con los comandos de docker existentes. En mi caso, elegí el nombre mpdocker y ejecuté este comando para crear el alias:
multipass alias docker-vm:docker mpdocker
Ahora, podemos ejecutar comandos de Docker en la VM haciendo referencia primero a multipass, por ejemplo
multipass docker run hello-world
Sin embargo, podemos ir un paso más allá, agregando Multipass a la variable PATH, lo que eliminará la necesidad del prefijo multipass. La salida del comando alias proporciona los pasos necesarios y debería verse así:
$ENV:PATH="$ENV:PATH;C:/Users/natha/AppData/local/multipass/bin"
envolver
Ahora debería poder ejecutar comandos de la ventana acoplable desde el terminal en el host. Para probar si todo está bien, intente ejecutar el comando docker (docker, mpdocker o el nombre de su elección) que configuró el alias en el paso anterior.
docker run hello-world
Debería ver un mensaje de bienvenida de Docker indicando que la instalación se está ejecutando normalmente.
¡Felicidades! Ahora ha configurado una instancia de Docker que se ejecuta en la VM Multipass y se controla a través de la línea de comandos del host.
Estén atentos para más guías sobre cómo usar multicanal Como alternativa a Docker Desktop, incluye el montaje de volúmenes desde el host, el control de la ventana acoplable a través de sockets SSH, ¡y más!