Grupo: 3 - Big Brain
Archivo de registro y seguimiento de todas las actividades, documentación y código fuente del Trabajo Práctico Integrador correspondiente a la asignatura Desarrollo de Software de la facultad.
Follow these steps to pull our Docker image and run the backend with MySQL using Docker Compose.
- Go to the organization packages page: FRRe-DS Packages
- Our container image is published under the name:
2025-grupo-03-backend-logistica. - Open the package and copy the Docker pull URL
Create a docker-compose.yml like this (replace the image: tag with the one you copied from the package):
services:
mysql:
image: mysql:8.0
container_name: shipping_mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root123
MYSQL_DATABASE: shipping_db
MYSQL_USER: shipping_user
MYSQL_PASSWORD: shipping_pass
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost", "-u", "shipping_user", "-pshipping_pass"]
interval: 3s
timeout: 5s
retries: 20
start_period: 10s
back:
image: ghcr.io/<owner>/2025-grupo-03-backend-logistica:<tag> #replace this with the actual value from step 1!!
container_name: shipping_back
restart: always
environment:
DB_HOST: mysql
DB_PORT: 3306
DB_USERNAME: shipping_user
DB_PASSWORD: shipping_pass
DB_DATABASE: shipping_db
PORT: 3010
KEYCLOAK_AUTH_SERVER_URL: http://keycloak:8080 #tu URL de keycloak
KEYCLOAK_REALM: ds-2025-realm
STOCK_SERVICE_URL: http://api-gateway:80 #no hace falta que se la URL de tu API Gateway, puede ser la URL del servicio de stock directo
depends_on:
mysql:
condition: service_healthy
ports:
- "3010:3000"
volumes:
mysql_data:Run it:
docker compose up -d
# wait for MySQL healthcheck
curl http://localhost:3010/shipping/transport-methodsTroubleshooting GHCR pulls:
- Name invalid → make sure you have copied the correct image name. Eg:
ghcr.io/<owner>/2025-grupo-03-backend-logistica:<tag>.