Docker Compose con Nodejs y MySQL Tutorial
En este tutorial, aprenderás cómo utilizar Docker Compose para configurar un entorno de desarrollo con Node.js y MySQL de forma rápida y sencilla.
Qué es Docker Compose?
Docker Compose es una herramienta que permite definir y ejecutar aplicaciones multi-contenedor con Docker. Permite definir la configuración de los servicios que componen tu aplicación en un archivo YAML, y luego iniciar todos esos servicios con un solo comando. Esto es especialmente útil para entornos de desarrollo, donde es común tener varios servicios interconectados que necesitan ser levantados juntos.
Configuración del entorno
Para seguir este tutorial, necesitarás tener Docker y Docker Compose instalados en tu máquina. Además, también necesitarás tener Node.js y MySQL instalados, o puedes utilizar contenedores de Docker para estos servicios.
Creación del archivo Docker Compose YAML
En tu directorio de trabajo, crea un archivo llamado docker-compose.yml
con el siguiente contenido:
version: '3' services: app: image: node:10 volumes: - .:/app working_dir: /app command: npm start ports: - "3000:3000" depends_on: - db db: image: mysql:5.7 environment: MYSQL_ROOT_PASSWORD: example MYSQL_DATABASE: myapp MYSQL_USER: user MYSQL_PASSWORD: password
Construyendo y levantando los contenedores
Una vez que tienes el archivo docker-compose.yml
en tu directorio de trabajo, puedes levantar los servicios utilizando el comando docker-compose up
:
$ docker-compose up
Conclusión
En este tutorial, has aprendido cómo utilizar Docker Compose para configurar un entorno de desarrollo con Node.js y MySQL de forma sencilla. Ahora puedes empezar a desarrollar tu aplicación sin tener que preocuparte por la configuración de los servicios, ya que Docker Compose se encarga de levantarlos por ti. ¡A disfrutar del desarrollo con Docker Compose!
gooooddd
Grande capo me salvaste
Fazt tengo una dudaaa bastante grande, podrias comunicarte conmigo por favor… por cierto muy bueno tu videoo.. 😉
gracias
Hola Fazt. como seria para conectarse a una base de datos mysql de producción que se encuentra en un servidor remoto?
yo estoy tratando de pasar mi app laravel+nod.js+mysql+leaflet a docker pero aun no logro un buen resultado que me recomiendan
Muy buen video, me queda una duda, supongamos que tengo un proyecto en PHP Laravel y con docker instalo todo lo que necesito, servidor local, bbdd, etc, cuando empiezo a programar todo ese codigo se va guardando en algun contenedor de docker o el codigo no se guarda? en paralalo deberia ir subiendo el codigo con GIT cierto? muchas gracias
a alguien le sale este errro?
Unable to load authentication plugin 'auth_gssapi_client'.
Como hace para tener el autocomplete de la terminal?
Buen tutorial, lo probe con redis como base de datos cache y funciono bien.
es en linux esto?
Grande fatz, fácil y preciso, gracias!
Excelente, una muy buena base de aprendizaje para avanzar. Muchas gracias!
estoy peleandome con una app node backend y mongoDB, gracias por el video y si Docker Desktop esta disponible en Ubuntu
El tutorial está ok, pero… ¿soy al único que depends_on no le llega por si solo y le ha tenido que meter una condición?
Excelente como siempre, saludos fazt.
Excelente video 👏🏻👏🏻👏🏻
Excelente Fazt como siempre, una consulta: una vez que tenemos el proyecto o app que queremos lista, tenes de pronto material al respecto sobre la parte luego del código? como deploy, las diferentes plataformas o alternativas actuales para llevar la app a un entorno de producción??, teniendo en cuenta que esos gastos generalmente corren por cuenta del cliente que plataformas recomiendas para bases de datos, backend y frontend, como para tener una idea de que alternativas ofrecerles en cuanto costo beneficio???. O si tienes un curso, tutorial o material al respecto. Muchas gracias por tantos conocimientos. Quedo muy atento a tu respuesta.
Hola @fazt gracias por compartir tus conocimientos.. Realice el tutorial todo bien… Pero el que tiene en el blog con reload no lo hace.. El contenedor corre bien pero no autoreload.. Que puede ser… 😅
hola, excelente video. Puedes hacer un ejemplo usando nhost en self-host y docker