Requisitos

Descargando la box vagrant de Debian 12

Creamos la carpeta donde vayamos a contener nuestra MV y descargamos la Box, en mi caso Debian 12.

vagrant init generic/debian12

Preparando la box para funcionar directamente con #Docker

Esto no es necesario hacerlo en #Vagrant pero si lo dejamos ya preparado nos puede valer para futuras pruebas con un contenedor #Docker. Para ello modificamos el vagrantfile

# Modificar Vagrantfile
notepad .\Vagrantfile

El aspecto de mi Vagrantfile es este:

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|

  config.vm.box = "generic/debian12"
  config.vm.hostname = "Debian12conDocker"
  config.vm.provider "vmware_desktop" do |vmware|
    vmware.vmx["memsize"] = "4096"
    vmware.vmx["numvcpus"] = "4"
  end

  config.vm.provision "shell", inline: <<-SHELL
    apt update
    # Add Docker's official GPG key:
    apt install ca-certificates curl
    install -m 0755 -d /etc/apt/keyrings
    curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
    chmod a+r /etc/apt/keyrings/docker.asc

    # Add the repository to Apt sources:
    echo \
      "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
      $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
      tee /etc/apt/sources.list.d/docker.list > /dev/null
    apt update
    apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  SHELL
end

Otra alternativa es con el plugin de vagrant-docker:

# -*- mode: ruby -*-
# vi: set ft=ruby :

Vagrant.configure("2") do |config|

  config.vm.box = "generic/debian12"
  config.vm.hostname = "Debian12conDockerPlug"

  # require plugin https://github.com/leighmcculloch/vagrant-docker-compose
  config.vagrant.plugins = "vagrant-docker-compose"

  # install docker and docker-compose
  config.vm.provision :docker
  config.vm.provision :docker_compose

  config.vm.provider "vmware_desktop" do |vmware|
    vmware.vmx["memsize"] = "4096"
    vmware.vmx["numvcpus"] = "4"
  end
end

Creando la máquina virtual. El --debug es para ver por pantalla todo lo que va realizando.

vagrant up --provider=vmware_desktop --debug

Instalando Apache Superset 3

Primero entramos por ssh a nuestra MV recién creada.

vagrant ssh

Entramos como root

sudo su

Clonamos la última version del git de apache #superset

git clone https://github.com/apache/superset.git

Entramos en la carpeta

cd superset

Y podemos arrancar la app. La primera vez tardará más porque tiene que descargar todos los contenedores:

docker compose up

Veremos que tarda porque crea también una base de datos de ejemplos que es perfecto para empezar a cacharrear y ver como crea algunos gráficos y dashboards.

Una vez está todo ok podemos entrar con el navegador a través de http://[ipdelaMV]:8088 con user admin y password admin

Si quieres saber la ip puedes hacerlo con:

ip -4 a s

A mi de primeras nunca me va la version 3. Así que os voy a poner las cosas que he cambiado.

Primero borramos los contenedores docker compose down -v

Generar SECRET_KEY

openssl rand -base64 42

Añadimos este al final del documento docker/.env-non-dev

SUPERSET_SECRET_KEY=01N441iqyc7HALv82HshIMPYP+KVe7MiIXdb7xD6MDW0jnXdS94qM8W0

Para que funcione con SQL Server hay que añadir un fichero para que instale el driver. Para otros drivers consultar aquí

touch ./docker/requirements-local.txt
echo "pymssql" >> ./docker/requirements-local.txt

Lanzamos de nuevo los contenedores

docker compose -f docker-compose-non-dev.yml up -d

Para ver los logs para ver como va:

docker compose -f docker-compose-non-dev.yml logs -f

Y ahora tras un rato que inicialice la base de datos con ejemplos y otras cosas ya podremos acceder a nuestro Apache Superset.

Ya puedes conectar con tu base de datos y empezar a hacer tus gráficas y dashboards con un programa open source.

Do you like what you are reading?. Subscribe to receive updates.

Unsubscribe anytime