25개 이상의 토픽을 선택하실 수 없습니다. Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

112 lines
2.5 KiB

  1. services:
  2. db:
  3. image: postgres
  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. kafdrop:
  17. image: obsidiandynamics/kafdrop
  18. restart: "no"
  19. ports:
  20. - "127.0.0.1:9000:9000"
  21. env_file:
  22. - ./env/kafdrop.env
  23. depends_on:
  24. - "kafka"
  25. kafka:
  26. image: apache/kafka:3.9.0
  27. restart: "no"
  28. ports:
  29. - "127.0.0.1:9092:9092"
  30. - "127.0.0.1:9093:9093"
  31. env_file:
  32. - ./env/kafka.env
  33. healthcheck:
  34. test: ["CMD-SHELL", "/opt/kafka/bin/kafka-topics.sh --bootstrap-server 127.0.0.1:9092 --list"]
  35. interval: 10s
  36. timeout: 5s
  37. retries: 10
  38. start_period: 20s
  39. kafka-init:
  40. image: apache/kafka:3.9.0
  41. command: [ "sh", "-c", "ls -l /tmp/create_topic.sh && /tmp/create_topic.sh" ]
  42. depends_on:
  43. kafka:
  44. condition: service_healthy
  45. volumes:
  46. - ./init-scripts/create_topic.sh:/tmp/create_topic.sh
  47. env_file:
  48. - ./env/kafka-init.env
  49. valkey:
  50. image: valkey/valkey:9.0.0
  51. container_name: valkey
  52. ports:
  53. - "127.0.0.1:6379:6379"
  54. presense-decoder:
  55. image: afasystemadmin/ble-ai-localizer:decoder_v1
  56. container_name: presense-decoder
  57. env_file:
  58. - ./env/presense-decoder.env
  59. depends_on:
  60. kafka-init:
  61. condition: service_completed_successfully
  62. db:
  63. condition: service_healthy
  64. restart: always
  65. presense-server:
  66. image: afasystemadmin/ble-ai-localizer:server_v1
  67. container_name: presense-server
  68. env_file:
  69. - ./env/presense-server.env
  70. ports:
  71. - "127.0.0.1:1902:1902"
  72. depends_on:
  73. valkey:
  74. condition: service_started
  75. kafka-init:
  76. condition: service_completed_successfully
  77. db:
  78. condition: service_healthy
  79. restart: always
  80. presense-bridge:
  81. image: afasystemadmin/ble-ai-localizer:bridge_v1
  82. container_name: presense-bridge
  83. env_file:
  84. - ./env/presense-bridge.env
  85. depends_on:
  86. kafka-init:
  87. condition: service_completed_successfully
  88. db:
  89. condition: service_healthy
  90. restart: always
  91. presense-location:
  92. image: afasystemadmin/ble-ai-localizer:location_v1
  93. container_name: presense-location
  94. env_file:
  95. - ./env/presense-location.env
  96. depends_on:
  97. kafka-init:
  98. condition: service_completed_successfully
  99. db:
  100. condition: service_healthy
  101. restart: always