ProyectoDocker is a full-stack CV (curriculum vitae) application fully containerized with Docker. It brings together three services — a React frontend, a Node.js/Express backend, and a MySQL 8.0 database — all wired together and managed through a singleDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/jperez77775/ProyectoDocker/llms.txt
Use this file to discover all available pages before exploring further.
docker-compose.yml file. This documentation covers everything you need to build, deploy, and operate the application.
Quickstart
Build, push, and deploy the full application in minutes
Architecture
Understand how the three services connect and communicate
Services
Explore the backend, frontend, and database services in detail
API Reference
Full reference for the REST API endpoint exposed by the backend
What’s included
ProyectoDocker packages three services into a single deployable unit:- Frontend — A React application served by Nginx on port
3000. It displays a personal CV by consuming the backend REST API, with automatic retry logic while Docker services start up. - Backend — A Node.js/Express server on port
4000that queries MySQL and serves CV data as JSON viaGET /cv. - Database — A MySQL 8.0 instance pre-seeded with CV data via an
init.sqlinitialization script and protected by a health check so dependent services wait for readiness.
The backend waits for the database health check to pass before starting, and the frontend retries API requests automatically until the backend is ready. You do not need to manually coordinate startup order.
Key features
- Three-service Docker Compose orchestration with startup dependency ordering
- Multi-stage Docker builds for lean production images
- Persistent MySQL data volume so data survives container restarts
- Automatic backend reconnection on database failure
- UTF-8/utf8mb4 support for Spanish characters throughout the stack
- Images published to Docker Hub for portability across machines