docker-compose.yml 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165
  1. version: '2.2'
  2. networks:
  3. airflow_network:
  4. driver: bridge
  5. services:
  6. airflow_db:
  7. image: postgres:latest
  8. env_file:
  9. - /home/igf/airflow_test/secrets/airflow_db_env
  10. ports:
  11. - "5433:5432"
  12. restart: always
  13. volumes:
  14. - /home/igf/airflow_test/postgres_airflow_db:/var/lib/postgresql/data:rw
  15. container_name: airflow_db
  16. networks:
  17. - airflow_network
  18. airflow_results_db:
  19. image: postgres:latest
  20. env_file:
  21. - /home/igf/airflow_test/secrets/airflow_results_db_env
  22. ports:
  23. - "5434:5432"
  24. restart: always
  25. volumes:
  26. - /home/igf/airflow_test/postgres_airflow_results_db:/var/lib/postgresql/data:rw
  27. container_name: airflow_results_db
  28. networks:
  29. - airflow_network
  30. redis-server:
  31. image: redis:latest
  32. ports:
  33. - "6379:6379"
  34. restart: always
  35. volumes:
  36. - /home/igf/airflow_test/secrets/redis.conf:/usr/local/etc/redis/redis.conf:ro
  37. - /home/igf/airflow_test/redis_airflow_data:/data:rw
  38. container_name: redis-server
  39. command: redis-server /usr/local/etc/redis/redis.conf --appendonly yes
  40. networks:
  41. - airflow_network
  42. airflow_webserver:
  43. image: apache/airflow:1.10.12
  44. env_file:
  45. - /home/igf/airflow_test/secrets/airflow_env
  46. links:
  47. - airflow_db
  48. - airflow_results_db
  49. - redis-server
  50. ports:
  51. - "8083:8080"
  52. volumes:
  53. - /home/igf/airflow_test/logs:/rds/general/user/igf/ephemeral/airflow_logs/logs:rw
  54. - /home/igf/airflow_test/github/igf-airflow-hpc:/rds/general/user/igf/home/data2/airflow_test/github/igf-airflow-hpc:ro
  55. - /home/igf/airflow_test/github/data-management-python:/rds/general/user/igf/home/data2/airflow_test/github/data-management-python:ro
  56. - /home/igf/airflow_test/secrets:/rds/general/user/igf/home/data2/airflow_test/secrets:ro
  57. - /home/igf/airflow_test/plugin:/rds/general/user/igf/home/data2/airflow_test/plugin:ro
  58. - /home/igf/airflow_test/ssl_cert/airflow.cert:/SSL/airflow.cert:ro
  59. - /home/igf/airflow_test/ssl_cert/airflow.key:/SSL/airflow.key:ro
  60. - /home/igf/.ssh/id_rsa:/SSH/id_rsa:ro
  61. depends_on:
  62. - airflow_db
  63. - airflow_results_db
  64. - redis-server
  65. restart: always
  66. command: webserver
  67. container_name: airflow_webserver
  68. networks:
  69. - airflow_network
  70. airflow_scheduler:
  71. image: apache/airflow:1.10.12
  72. env_file:
  73. - /home/igf/airflow_test/secrets/airflow_env
  74. links:
  75. - airflow_db
  76. - airflow_results_db
  77. - redis-server
  78. depends_on:
  79. - airflow_db
  80. - airflow_results_db
  81. - airflow_webserver
  82. - redis-server
  83. volumes:
  84. - /home/igf/airflow_test/logs:/rds/general/user/igf/ephemeral/airflow_logs/logs:rw
  85. - /home/igf/airflow_test/github/igf-airflow-hpc:/rds/general/user/igf/home/data2/airflow_test/github/igf-airflow-hpc:ro
  86. - /home/igf/airflow_test/github/data-management-python:/rds/general/user/igf/home/data2/airflow_test/github/data-management-python:ro
  87. - /home/igf/airflow_test/secrets:/rds/general/user/igf/home/data2/airflow_test/secrets:ro
  88. - /home/igf/airflow_test/plugin:/rds/general/user/igf/home/data2/airflow_test/plugin:ro
  89. - /home/igf/airflow_test/ssl_cert/airflow.cert:/SSL/airflow.cert:ro
  90. - /home/igf/airflow_test/ssl_cert/airflow.key:/SSL/airflow.key:ro
  91. restart: always
  92. command: scheduler
  93. container_name: airflow_scheduler
  94. networks:
  95. - airflow_network
  96. airflow_worker:
  97. image: apache/airflow:1.10.12
  98. env_file:
  99. - /home/igf/airflow_test/secrets/airflow_env
  100. links:
  101. - airflow_db
  102. - airflow_results_db
  103. - redis-server
  104. depends_on:
  105. - airflow_db
  106. - airflow_results_db
  107. - airflow_webserver
  108. - redis-server
  109. - airflow_scheduler
  110. ports:
  111. - "8793:8793"
  112. volumes:
  113. - /home/igf/airflow_test/logs:/rds/general/user/igf/ephemeral/airflow_logs/logs:rw
  114. - /home/igf/airflow_test/github/igf-airflow-hpc:/rds/general/user/igf/home/data2/airflow_test/github/igf-airflow-hpc:ro
  115. - /home/igf/airflow_test/github/data-management-python:/rds/general/user/igf/home/data2/airflow_test/github/data-management-python:ro
  116. - /home/igf/airflow_test/secrets:/rds/general/user/igf/home/data2/airflow_test/secrets:ro
  117. - /home/igf/airflow_test/plugin:/rds/general/user/igf/home/data2/airflow_test/plugin:ro
  118. - /home/igf/.ssh/id_rsa:/SSH/id_rsa:ro
  119. restart: always
  120. command: worker -q igf-lims,generic --celery_hostname igf-lims
  121. container_name: airflow_worker
  122. networks:
  123. - airflow_network
  124. airflow_adminer:
  125. image: adminer:latest
  126. ports:
  127. - "8085:8080"
  128. depends_on:
  129. - airflow_db
  130. - airflow_results_db
  131. links:
  132. - airflow_db
  133. - airflow_results_db
  134. restart: always
  135. container_name: airflow_adminer
  136. networks:
  137. - airflow_network
  138. airflow_flower:
  139. image: apache/airflow:1.10.12
  140. env_file:
  141. - /home/igf/airflow_test/secrets/airflow_env
  142. links:
  143. - airflow_db
  144. - airflow_results_db
  145. - redis-server
  146. ports:
  147. - "5555:5555"
  148. depends_on:
  149. - airflow_db
  150. - airflow_results_db
  151. - airflow_webserver
  152. - redis-server
  153. - airflow_scheduler
  154. volumes:
  155. - /home/igf/airflow_test/logs:/rds/general/user/igf/ephemeral/airflow_logs/logs:rw
  156. - /home/igf/airflow_test/github/igf-airflow-hpc:/rds/general/user/igf/home/data2/airflow_test/github/igf-airflow-hpc:ro
  157. - /home/igf/airflow_test/github/data-management-python:/rds/general/user/igf/home/data2/airflow_test/github/data-management-python:ro
  158. - /home/igf/airflow_test/secrets:/rds/general/user/igf/home/data2/airflow_test/secrets:ro
  159. - /home/igf/airflow_test/plugin:/rds/general/user/igf/home/data2/airflow_test/plugin:ro
  160. restart: always
  161. command: flower
  162. container_name: airflow_flower
  163. networks:
  164. - airflow_network