docker-compose.yml 962 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. version: '3.7'
  2. services:
  3. app:
  4. container_name: go-api
  5. build:
  6. context: .
  7. dockerfile: Dockerfile
  8. image: go-api
  9. ports:
  10. - 8080:8080
  11. environment:
  12. - DB_HOST=mysql
  13. - DB_PORT=3306
  14. - DB_USER=root
  15. - DB_PASSWORD=password
  16. - DB_NAME=estudiantes
  17. depends_on:
  18. mysql:
  19. condition: service_healthy
  20. networks:
  21. - go-network
  22. mysql:
  23. container_name: go-mysql
  24. image: mysql:latest
  25. environment:
  26. - MYSQL_ROOT_PASSWORD=password
  27. - MYSQL_USER=root
  28. - MYSQL_PASSWORD=password
  29. - MYSQL_DATABASE=estudiantes
  30. volumes:
  31. - dbdata:/var/lib/mysql
  32. - ./initdb:/docker-entrypoint-initdb.d
  33. ports:
  34. - "3306:3306"
  35. networks:
  36. - go-network
  37. healthcheck:
  38. test: [ "CMD", "mysqladmin", "ping", "-h", "localhost" ]
  39. interval: 10s
  40. timeout: 5s
  41. retries: 3
  42. volumes:
  43. dbdata:
  44. networks:
  45. go-network:
  46. driver: bridge