docker-compose.yml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. version: "3"
  2. services:
  3. nginx:
  4. image: nginx:1.20.2
  5. ports:
  6. - "9100:80"
  7. - "9103:443"
  8. environment:
  9. - TZ=Asia/Shanghai
  10. volumes:
  11. - ../Web/dist:/usr/share/nginx/html
  12. - "./nginx/conf/nginx.conf:/etc/nginx/nginx.conf:ro"
  13. - "./nginx/key:/etc/nginx/key/"
  14. links:
  15. - adminNet
  16. mysql:
  17. image: mysql:5.7
  18. ports:
  19. - 9101:3306
  20. restart: unless-stopped
  21. privileged: true
  22. ulimits:
  23. nproc: 655350
  24. nofile:
  25. soft: 131072
  26. hard: 400000
  27. #healthcheck:
  28. # test: "/usr/bin/mysql --user=root --password=root --execute \"SHOW DATABASES;\""
  29. # interval: 10s # 间隔时间
  30. # timeout: 3s # 超时时间
  31. # retries: 50 # 重试次数
  32. environment:
  33. MYSQL_ROOT_HOST: "%"
  34. MYSQL_DATABASE: admin
  35. MYSQL_ROOT_PASSWORD: root
  36. TZ: Asia/Shanghai
  37. volumes:
  38. - ./mysql/mysql:/var/lib/mysql
  39. - ./mysql/mysql.cnf:/etc/mysql/conf.d/mysql.cnf
  40. redis:
  41. image: 'redis:latest' # 使用最新版本的 Redis 镜像,也可以指定特定版本如 'redis:6.2.7'
  42. container_name: my-redis # 自定义容器名称
  43. ports:
  44. - '6379:6379' # 映射宿主机的 6379 端口到容器的 6379 端口
  45. volumes: # 持久化数据
  46. - ./redis/redis.conf:/usr/local/etc/redis/redis.conf
  47. - ./redis/data:/data:rw
  48. - ./redis/logs:/logs
  49. #command: ['redis-server', '--appendonly', 'yes'] # 启用AOF持久化
  50. command: ['redis-server','/usr/local/etc/redis/redis.conf']
  51. environment: # 设置环境变量,例如密码
  52. - REDIS_PASSWORD=123456
  53. minio:
  54. image: minio/minio:RELEASE.2025-04-22T22-12-26Z
  55. container_name: minio
  56. restart: always
  57. environment:
  58. - MINIO_ROOT_USER=admin
  59. - MINIO_ROOT_PASSWORD=admin123456
  60. volumes:
  61. - ./minio/data:/data
  62. - ./minio/config:/root/.minio
  63. ports:
  64. - "9104:9000" # API端口
  65. - "9105:9001" # 控制台端口
  66. command: server /data --console-address ":9001"
  67. tdengine:
  68. image: tdengine/tdengine:3.3.6.13
  69. volumes:
  70. - ./tdengine/taos/dnode/data:/var/lib/taos
  71. - ./tdengine/taos/dnode/log:/var/log/taos
  72. hostname: tdengine
  73. container_name: tdengine
  74. privileged: true
  75. environment:
  76. TAOS_FQDN: "tdengine"
  77. TAOS_FIRST_EP: "tdengine" # 指向首个节点主机名
  78. TAOS_SECOND_EP: "tdengine" # 可选备用节点
  79. ports:
  80. - 6030:6030
  81. - 6041:6041
  82. - 6044-6049:6044-6049
  83. - 6044-6045:6044-6045/udp
  84. - 6060:6060
  85. adminNet:
  86. image: mcr.microsoft.com/dotnet/aspnet:9.0
  87. ports:
  88. - "9102:5050"
  89. environment:
  90. - TZ=Asia/Shanghai
  91. volumes:
  92. - ../server/Admin.NET.Web.Entry/bin/Release/net9.0/:/app
  93. - ./app/Configuration/:/app/Configuration/
  94. - ./app/wait-for-it.sh:/app/wait-for-it.sh
  95. working_dir: /app
  96. command: ["/bin/bash", "-c", "/app/wait-for-it.sh mysql:3306 -t 120 && dotnet Admin.NET.Web.Entry.dll --content-root /app/wwwroot"]
  97. depends_on:
  98. - mysql
  99. - redis