Hoy, vamos a usar imagen de VyOS descargada directamente de la página web y vamos a «dockerizarla».
Es decir, vamos a usar una imagen .ISO de VyOS para crear un contenedor docker en Linux y vamos a acceder a ella para poder transformar nuestro Ubuntu en un router.
Os recuerdo que para ello PRIMERO vais a necesitar tener instalado DOCKER en vuestro LINUX, os dejo aquí cómo hacerlo.
Descarga de la imagen de VyOS
Como bien seguro ya sabéis, VyOS nos ofrece versiones de su sistema operativo totalmente gratuitas desde su página web.
En nuestro caso y para nuestro proyecto nos descargaremos una imagen «rolling» directamente desde su página:
Descarga de VyOS de versión «Rolling Release»
Creación de la imagen «dockerizada» de VyOS
Una vez descargada abrimos una consola de Linux y crearemos una carpeta llamada «vyos», a la cual accederemos en el mismo momento:
Moveré, la ISO que me he descargado en la carpeta «descargas» a la carpeta que acabo de crear llamada «vyos». Además me aseguraré a través de la consola que realmente está ahí con el comando «ls -l»:
ls -l
Ahora haremos varios pasos, por un lado crearemos una nueva carpeta dentro del directorio «vyos» con nombre «rootfs», luego montaremos la ISO y finalmente extraeremos su sistema de archivos para poder importarlo en Docker:
sudo mount -o loop vyos-rolling-latest.iso rootfs
sudo apt-get install -y squashfs-tools
mkdir unsquashfs
sudo unsquashfs -f -d unsquashfs/ rootfs/live/filesystem.squashfs
Una vez extraído el sistema de archivos, lo importamos como una nueva imagen de Docker y crearemos así una imagen de Docker llamada vyos:custom.
Ejecución del docker de VyOS y acceso
Ahora podemos ya ejecutar un contenedor basado en la imagen que acabamos de crear:
Comprobamos que realmente tenemos el docker corriendo:
Y ahora si, accedemos a nuestro nuevo docker de VyOS:
Una vez dentro de nuestro docker de VyOS es como si estuvieramos ya en un router con VyOS de manera que ya podriamos interactuar con él con cualquier comando de VyOS:
Finalmente, deciros que, si os fijáis nuestro «prompt» se llama «vyos@» y un número bastante aleatorio, esto es porque no le hemos dado un nombre a nuestro router (aún), de manera que, de forma alternativa podríamos ejecutar nuestro docker directamente con un «hostname» de la siguiente forma, y poder acceder así a nuestro docker de VyOS directamente con un hostname.
Con esto, evitaréis el error «unable to resolve host» cuando guardéis cambios dentro de VyOS.
Ahora si, como veis, hemos podido acceder a nuestro docker de una forma más «limpia» con un hostname asignado a la hora de su creación.