docker-compose.yml 901 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  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=mydbusers
  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_DATABASE=mydbusers
  28. volumes:
  29. - dbdata:/var/lib/mysql
  30. - ./initdb:/docker-entrypoint-initdb.d
  31. ports:
  32. - "3306:3306"
  33. networks:
  34. - go-network
  35. healthcheck:
  36. test: [ "CMD", "mysqladmin", "ping", "-h", "localhost" ]
  37. interval: 10s
  38. timeout: 5s
  39. retries: 3
  40. volumes:
  41. dbdata:
  42. networks:
  43. go-network:
  44. driver: bridge