En esta ocasión instalaremos una imagen de Ubuntu para poder instalar Lobster.
¿Por qué instalar Ubuntu para poder instalar Lobster? La razón es que no existe una imagen de Lobster para poder usarlo sin la necesidad de una instalación.
Además de que nos servirá para poder conocer la herramienta de Docker Desktop.
Requisitos:
- Tener una cuenta en Docker Hub.
- Tener instalada la herramienta de Docker Desktop.
- Saber como instalar paquetes en Ubuntu.
- Saber como usar Git.
Instalando Ubuntu con Docker
1. Como primer paso es buscar una imagen de Ubuntu, lo podemos hacer desde la línea de comandos:
$ docker search ubuntu
También usando la herramienta de Docker Desktop:
2. Descargamos la imagen de Ubuntu con la línea de comandos:
$ docker pull ubuntu
O con la herramienta visual:
Con esto iniciará la descarga de la imagen.
3. Listamos la imagen descargada usando la línea de comandos:
$ docker images # o con este otro comando $ docker image ls
O simplemente con la herramienta visual:
4. Echamos a andar la imagen con este comando:
$ docker run -it --rm ubuntu bash
Podemos ver que la herramienta visual esta en sincronía a lo que hagamos por línea de comandos:
Con esto entraremos a la terminal de Ubuntu.
5. Ahora validemos que no tenemos Lobster en el sistema:
root@580431506c9f:/# which lobster root@580431506c9f:/# lobster --version bash: lobster: command not found
Esto es correcto, pues no lo hemos instalado.
Instalando Lobster en Ubuntu
1. Instalar las dependencias necesarias:
# actualizar $ apt update # instalar dependencias $ apt-get install build-essential git cmake mesa-common-dev libsdl2-dev libfreetype6-dev
Después de un determinado tiempo se instalarán las dependencias.
2. Clonamos el repositorio y nos ubicamos en el directorio generado:
$ git clone https://github.com/aardappel/lobster.git $ cd lobster
3. Compilamos Lobster:
$ cd dev $ cmake . $ make -j$(nproc)
4. Verificamos la instalación:
$ /lobster/bin/lobster --version
Con esto tenemos instalado Lobster
Lobster en un vistazo
Podemos empezar a usar Lobster. Instalemos el editor nano en Ubuntu:
$ apt install nano
Creamos un achivo llamado holamundo.lobster con este contenido:
print "Hola, mundo en Lobster"
Ejecutamos:
$ /lobster/bin/lobster holamundo.lobster
Salida:
Hola, mundo en Lobster
También podemos crear clases en este lenguaje. Crearemos otro archivo llamado clases.lobster que tendrá este contenido:
class Animal: vivo = true class Gato : Animal def hola(): print "El gato dice miau" class Perro : Animal ladrido = 0 def hola(p::Perro): print "El perro dice guau" ladrido++ let p = Perro {} p.hola()
Ejecutamos el programa:
Nota: Como el contenedor se ejecuta con --rm , todo se borrará al salir.
Si queremos mantener Lobster de manera frecuente, entonces debemos montar un volumen:
$ docker run -it -v ~/lobster-build:/lobster-build ubuntu bash
También tenemos la opción de crear un Dockerfile basado en Ubuntu con la compilación incluida.
Dockerfile
FROM ubuntu:latest ENV DEBIAN_FRONTEND=noninteractive RUN apt-get update && \ apt-get install -y git cmake build-essential libglm-dev libglfw3-dev libglew-dev libfreetype6-dev libopenal-dev libsndfile1-dev mesa-common-dev libpng-dev && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* RUN git clone https://github.com/aardappel/lobster.git /lobster WORKDIR /lobster/dev RUN cmake . && \ make -j$(nproc) ENV PATH="/lobster/bin:${PATH}" WORKDIR /workspace CMD ["bash"]
Este archivo lo debemos tener en un determinado directorio y desde este lanzar este comando:
$ docker build -t lobster-ubuntu .
Esto construirá la imagen. Es entonces cuando ya podemos ejecutar la imagen con este comando:
$ docker run -it --rm -v $(pwd):/workspace lobster-ubuntu
Esto monta tu directorio actual en /workspace dentro del contenedor, para que puedas trabajar con tus archivos locales.
Conclusiones:
- Hemos descargado una imagen de Ubuntu.
- Instalado las dependencias necesarias para la instalación de Lobster.
- Ejecutar programas Lobster.
- Crear una imagen con Ubuntu y Lobster listos para usar.
Enlaces:
https://hub.docker.com/https://aardappel.github.io/lobster/language_reference.html
https://aardappel.github.io/lobster/getting_started.html








Comentarios
Publicar un comentario