docker-compose.yaml 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. # 应用服务
  2. services:
  3. # 数据库服务
  4. mysql:
  5. container_name: mysql
  6. image: mysql:8.0
  7. restart: always
  8. environment:
  9. TZ: "Asia/Shanghai"
  10. MYSQL_ROOT_PASSWORD: "!23Qwe"
  11. MYSQL_DATABASE: "cmis_gs"
  12. MYSQL_DEFAULT_AUTH: "mysql_native_password"
  13. ports:
  14. - "3306:3306"
  15. volumes:
  16. - ./mysql/data:/var/lib/mysql
  17. - ./mysql/conf:/etc/mysql/conf.d
  18. - ./mysql/logs:/var/log/mysql
  19. command: --default-authentication-plugin=mysql_native_password
  20. networks:
  21. - app_network
  22. # redis服务
  23. redis:
  24. container_name: redis
  25. image: redis:6
  26. restart: always
  27. environment:
  28. TZ: "Asia/Shanghai"
  29. ports:
  30. - "6379:6379"
  31. volumes:
  32. - ./redis/conf/redis.conf:/etc/redis/redis.conf
  33. - ./redis/data:/data
  34. - ./redis/logs:/var/log/redis
  35. command: redis-server /etc/redis/redis.conf
  36. networks:
  37. - app_network
  38. # 前端nginx服务
  39. nginx:
  40. container_name: nginx
  41. image: nginx:latest
  42. restart: always
  43. environment:
  44. TZ: "Asia/Shanghai"
  45. ports:
  46. - "80:80"
  47. - "443:443"
  48. volumes:
  49. - ./nginx/nginx.conf:/etc/nginx/nginx.conf
  50. - ../hd-crane-gs/frontend:/usr/share/nginx/html/frontend
  51. networks:
  52. - app_network
  53. # Mosquitto MQTT Broker 服务
  54. mosquitto:
  55. container_name: mosquitto
  56. image: eclipse-mosquitto:latest # 官方稳定镜像
  57. restart: always
  58. environment:
  59. TZ: "Asia/Shanghai"
  60. ports:
  61. - "1883:1883" # 原生 MQTT TCP 端口(供后端/设备连接)
  62. - "9001:9001" # MQTT over WebSocket 端口(供前端 Vue 连接,对应 ws://xxx:8083)
  63. volumes:
  64. # 映射配置文件:当前目录/mqtt/mosquitto.conf -> 容器内配置文件路径
  65. - ./mqtt/mosquitto.conf:/mosquitto/config/mosquitto.conf
  66. # 映射数据目录:存储保留消息、客户端会话等数据(持久化)
  67. - ./mqtt/data:/mosquitto/data
  68. # 映射日志目录:存储 Mosquitto 运行日志
  69. - ./mqtt/logs:/mosquitto/log
  70. networks:
  71. - app_network # 加入现有应用网络,方便后端服务访问(容器内可通过 mosquitto:1883 连接)
  72. # 网络
  73. networks:
  74. app_network:
  75. driver: bridge