Skip to content

Doodba - Desarrollo con Docker

Esta guía configura un entorno de desarrollo local para proyectos Doodba.

Instala Docker Engine y Docker Compose plugin según tu distribución.

Terminal window
sudo apt update
sudo apt install -y ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo '$VERSION_CODENAME')
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
Terminal window
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Añade tu usuario al grupo docker para ejecutar Docker sin sudo.

Terminal window
sudo usermod -aG docker $USER

Abre una nueva sesión de terminal antes de continuar para aplicar el cambio de grupo.

Verifica que Docker quedó instalado:

Terminal window
docker --version
docker compose version

Instala pipx para gestionar herramientas Python aisladas.

Terminal window
sudo apt update
Terminal window
sudo apt install -y pipx

Instala las herramientas necesarias para la plantilla:

Terminal window
pipx install copier
pipx install invoke
pipx install pre-commit
pipx ensurepath

Genera el proyecto a partir de la plantilla:

Terminal window
copier copy https://github.com/Tecnativa/doodba-copier-template my-project
cd my-project

Inicializa el entorno de desarrollo:

Terminal window
invoke develop

Construye imágenes y agrega repositorios:

Terminal window
invoke img-build --pull
invoke git-aggregate

Prepara base de datos, instala módulos y arranca servicios:

Terminal window
invoke resetdb preparedb install --private start

Comprueba que los contenedores estén levantados y revisa logs si hace falta:

Terminal window
docker compose ps
docker compose logs -f
  • Si Docker da error de permisos, cierra sesión y vuelve a iniciar para aplicar el grupo docker.
  • Si copier o invoke no se encuentran, abre una nueva terminal para que pipx ensurepath tome efecto.
  • Si falla la construcción de imágenes, vuelve a ejecutar invoke img-build --pull.