docker-compose.yml 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. version: '3.8'
  2. services:
  3. mysql:
  4. image: mysql:8.0
  5. container_name: lqmd_mysql
  6. environment:
  7. MYSQL_ROOT_PASSWORD: root
  8. MYSQL_DATABASE: lqmd_retrieval
  9. TZ: Asia/Shanghai
  10. ports:
  11. - "3306:3306"
  12. volumes:
  13. - mysql_data:/var/lib/mysql
  14. command: --default-authentication-plugin=mysql_native_password --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
  15. networks:
  16. - lqmd_network
  17. redis:
  18. image: redis:7-alpine
  19. container_name: lqmd_redis
  20. ports:
  21. - "6379:6379"
  22. volumes:
  23. - redis_data:/data
  24. networks:
  25. - lqmd_network
  26. backend:
  27. build:
  28. context: ./backend
  29. dockerfile: Dockerfile
  30. container_name: lqmd_backend
  31. ports:
  32. - "8000:8000"
  33. depends_on:
  34. - mysql
  35. - redis
  36. networks:
  37. - lqmd_network
  38. nginx:
  39. image: nginx:alpine
  40. container_name: lqmd_nginx
  41. ports:
  42. - "80:80"
  43. volumes:
  44. - ./backend/docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
  45. - ./web/dist:/usr/share/nginx/html
  46. depends_on:
  47. - backend
  48. networks:
  49. - lqmd_network
  50. networks:
  51. lqmd_network:
  52. driver: bridge
  53. volumes:
  54. mysql_data:
  55. redis_data: