Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 

138 строки
3.1 KiB

  1. services:
  2. db:
  3. image: postgres:18
  4. container_name: db
  5. restart: always
  6. ports:
  7. - "127.0.0.1:5432:5432"
  8. env_file:
  9. - ./env/db.env
  10. healthcheck:
  11. test: ["CMD-SHELL", "pg_isready -U postgres"]
  12. interval: 5s
  13. timeout: 5s
  14. retries: 5
  15. start_period: 30s
  16. volumes:
  17. - pgdata:/var/postgresql/data
  18. kafdrop:
  19. image: obsidiandynamics/kafdrop
  20. restart: "no"
  21. ports:
  22. - "127.0.0.1:9000:9000"
  23. env_file:
  24. - ./env/kafdrop.env
  25. depends_on:
  26. - "kafka"
  27. kafka:
  28. image: apache/kafka:3.9.0
  29. restart: "no"
  30. ports:
  31. - "127.0.0.1:9092:9092"
  32. - "127.0.0.1:9093:9093"
  33. env_file:
  34. - ./env/kafka.env
  35. healthcheck:
  36. test: ["CMD-SHELL", "/opt/kafka/bin/kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --list"]
  37. interval: 10s
  38. timeout: 5s
  39. retries: 10
  40. start_period: 20s
  41. volumes:
  42. - kafkadata:/var/lib/kafka/data
  43. kafka-init:
  44. image: apache/kafka:3.9.0
  45. command: [ "sh", "-c", "ls -l /tmp/create_topic.sh && /tmp/create_topic.sh" ]
  46. depends_on:
  47. kafka:
  48. condition: service_healthy
  49. volumes:
  50. - ./init-scripts/create_topic.sh:/tmp/create_topic.sh
  51. env_file:
  52. - ./env/kafka-init.env
  53. presense-decoder:
  54. image: afasystemadmin/ble-ai-localizer:decoder_v1
  55. container_name: presense-decoder
  56. env_file:
  57. - ./env/presense-decoder.env
  58. environment:
  59. LOG_LEVEL: "info"
  60. depends_on:
  61. kafka-init:
  62. condition: service_completed_successfully
  63. db:
  64. condition: service_healthy
  65. restart: always
  66. logging:
  67. driver: "json-file"
  68. options:
  69. max-size: "10m"
  70. max-file: "3"
  71. presense-server:
  72. image: afasystemadmin/ble-ai-localizer:server_v1
  73. container_name: presense-server
  74. env_file:
  75. - ./env/presense-server.env
  76. environment:
  77. LOG_LEVEL: "info"
  78. ports:
  79. - "127.0.0.1:1902:1902"
  80. depends_on:
  81. kafka-init:
  82. condition: service_completed_successfully
  83. db:
  84. condition: service_healthy
  85. restart: always
  86. logging:
  87. driver: "json-file"
  88. options:
  89. max-size: "10m"
  90. max-file: "3"
  91. presense-bridge:
  92. image: afasystemadmin/ble-ai-localizer:bridge_v1
  93. container_name: presense-bridge
  94. env_file:
  95. - ./env/presense-bridge.env
  96. environment:
  97. LOG_LEVEL: "info"
  98. depends_on:
  99. kafka-init:
  100. condition: service_completed_successfully
  101. db:
  102. condition: service_healthy
  103. restart: always
  104. logging:
  105. driver: "json-file"
  106. options:
  107. max-size: "10m"
  108. max-file: "3"
  109. presense-location:
  110. image: afasystemadmin/ble-ai-localizer:location_v1
  111. container_name: presense-location
  112. env_file:
  113. - ./env/presense-location.env
  114. environment:
  115. LOG_LEVEL: "info"
  116. depends_on:
  117. kafka-init:
  118. condition: service_completed_successfully
  119. db:
  120. condition: service_healthy
  121. restart: always
  122. logging:
  123. driver: "json-file"
  124. options:
  125. max-size: "10m"
  126. max-file: "3"
  127. volumes:
  128. pgdata:
  129. kafkadata: