Servicios múltiples con Docker Compose

Guía práctica de Docker Compose para orquestar microservicios: estructura de proyecto escalable, redes dedicadas, volúmenes persistentes, healthchecks y despliegue reproducible.

13 sept 2025 • 4 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

Docker Compose es la herramienta ideal para orquestar servicios cuando trabajas con microservicios modernos, por ejemplo una API en Spring Boot, un frontend en Node.js y una base de datos PostgreSQL. Con Compose puedes definir todos los servicios en un solo archivo docker-compose.yml, construir imágenes a partir de Dockerfiles locales, crear una red compartida para que los contenedores se comuniquen por nombre y ejecutar o escalar todo con un solo comando.

En Q2BSTUDIO, empresa especializada en desarrollo de software a medida, aplicaciones a medida, inteligencia artificial, ciberseguridad y servicios cloud aws y azure, recomendamos una estructura de proyecto clara y escalable. Un ejemplo para dos servicios Java y una base de datos podría ser la siguiente disposición de carpetas donde cada servicio mantiene su propio Dockerfile y artefactos de compilación:

multi-service-app con carpetas service-a, service-b y database, además de archivos .env y docker-compose.yml. Cada servicio es independiente y contiene su código fuente, su Dockerfile y su pom.xml o package.json según corresponda.

Un Dockerfile típico para un servicio Spring Boot consiste en usar una imagen base de JDK, copiar el jar final y ejecutar java menosjar del archivo copiado. Recomendamos usar .dockerignore para ignorar target o node_modules y fijar versiones específicas de las imágenes base para reproducibilidad.

Centraliza variables sensibles en un archivo .env por ejemplo POSTGRES_USER, POSTGRES_PASSWORD, POSTGRES_DB y SPRING_PROFILES_ACTIVE. Docker Compose carga automáticamente estas variables y facilita la gestión de entornos y secretos en etapas tempranas.

El archivo docker-compose.yml define servicios, redes y volúmenes. En un entorno de producción conviene: construir los servicios desde el contexto local, levantar PostgreSQL con volumen persistente, asignar nombres de contenedor claros, crear una red dedicada para comunicación por nombre y configurar healthchecks y políticas de reinicio para mejorar la resiliencia.

Algunas convenciones y ventajas prácticas: la red dedicada permite que service-b llame a service-a usando la URL https://service-a usando el nombre de servicio como hostname. El volumen db-data persiste los datos de Postgres entre reinicios. La opción depends_on combinada con healthcheck asegura que servicios dependientes esperen hasta que la base de datos o servicios críticos estén listos.

Desde la raíz del proyecto puedes construir y lanzar todo con un solo comando por ejemplo docker compose up --build -d Esto construye las imágenes locales, crea y enlaza los contenedores a la red de la aplicación y deja el sistema en ejecución en segundo plano. Para verificar usa docker ps y docker compose logs -f para seguir logs en tiempo real.

Comunicaciones entre servicios dentro de la red de Docker evitan direcciones IP fijas y facilitan el escalado horizontal. Para escalar un servicio basta con docker compose up -d --scale service-b=3 y Docker Compose se encarga del resto.

Comandos útiles de ciclo de vida: docker compose stop para detener contenedores, docker compose up --build -d para reiniciar con nuevo código, docker compose down para derribar el stack y docker compose down --rmi all para eliminar también las imágenes. Para ver logs docker compose logs -f seguido del nombre del servicio.

Buenas prácticas y consejos avanzados: usar compilaciones multietapa para reducir tamaño de imágenes, gestionar secretos en producción con Docker secrets o soluciones de vault en lugar de .env, integrar monitorización y métricas con Prometheus y Grafana, añadir límites de recursos en contextos de Swarm o Compose v3 y automatizar builds y despliegues en CI CD subiendo imágenes versionadas a un registro privado.

En Q2BSTUDIO ayudamos a empresas a diseñar e implementar arquitecturas de microservicios robustas y seguras, con experiencia en software a medida y aplicaciones a medida. Si buscas crear o modernizar tu plataforma, conoce nuestros servicios de desarrollo en Desarrollo de aplicaciones a medida y descubre cómo integrar inteligencia artificial y agentes IA en tus procesos en Servicios de inteligencia artificial.

Además ofrecemos auditorías de ciberseguridad y pentesting, servicios cloud aws y azure para desplegar y escalar tu plataforma y soluciones de inteligencia de negocio y power bi para explotar tus datos. Palabras clave que resumen nuestra oferta: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud aws y azure, servicios inteligencia de negocio, ia para empresas, agentes IA y power bi.

Resumen final: con Docker Compose puedes definir, construir y ejecutar múltiples microservicios y una base de datos con un solo archivo y un solo comando, aplicar health checks, redes dedicadas y volúmenes persistentes, escalar horizontalmente y mantener un flujo de trabajo reproducible. En Q2BSTUDIO te acompañamos en todo el ciclo desde el diseño hasta la puesta en producción y el soporte de soluciones a medida.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.

Live Chat