docker-compose.yml 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295
  1. version: '2.2'
  2. services:
  3. nginx:
  4. build:
  5. context: extra/nginx/
  6. image: 'docker.infra.flowdat.com/fd3/nginx:latest'
  7. env_file:
  8. - host.env
  9. restart: 'on-failure:10'
  10. ports:
  11. - '80:80'
  12. - '443:443'
  13. volumes:
  14. - '/var/run/docker.sock:/tmp/docker.sock:ro'
  15. - './extra/nginx/certs:/etc/nginx/certs:ro'
  16. - './extra/nginx/vhost.d:/etc/nginx/vhost.d'
  17. - './extra/nginx/share:/usr/share/nginx/html'
  18. base:
  19. image: 'docker.infra.flowdat.com/fd3/base:latest'
  20. restart: 'on-failure:10'
  21. links:
  22. - 'mysql:mysql'
  23. - amqp
  24. env_file:
  25. - running.env
  26. - host.env
  27. - base.host.env
  28. volumes:
  29. - './base/:/opt/base'
  30. ftth:
  31. image: 'docker.infra.flowdat.com/fd3/ftth:latest'
  32. restart: 'on-failure:10'
  33. links:
  34. - 'mysql:mysql'
  35. - base
  36. - amqp
  37. - 'base:base.test.flowdat.com'
  38. env_file:
  39. - running.env
  40. - host.env
  41. - ftth.host.env
  42. - ftth.oauth.env
  43. volumes:
  44. - './ftth/:/opt/ftth'
  45. stats:
  46. image: 'docker.infra.flowdat.com/fd3/stats:latest'
  47. restart: 'on-failure:10'
  48. links:
  49. - 'mysql:mysql'
  50. - base
  51. - amqp
  52. - 'base:base.test.flowdat.com'
  53. volumes:
  54. - './stats/:/opt/stats'
  55. env_file:
  56. - running.env
  57. - host.env
  58. - stats.host.env
  59. - stats.oauth.env
  60. mapas:
  61. image: 'docker.infra.flowdat.com/fd3/mapas:latest'
  62. restart: 'on-failure:10'
  63. links:
  64. - 'mysql:mysql'
  65. - base
  66. - amqp
  67. - 'base:base.test.flowdat.com'
  68. env_file:
  69. - running.env
  70. - host.env
  71. - mapas.host.env
  72. - mapas.oauth.env
  73. volumes:
  74. - './mapas/:/opt/mapas'
  75. - './mapas/web/uploads:/opt/mapas/web/uploads'
  76. cablemodem:
  77. image: 'docker.infra.flowdat.com/fd3/cablemodem:latest'
  78. restart: 'on-failure:10'
  79. links:
  80. - 'mysql:mysql'
  81. - base
  82. - amqp
  83. - 'base:base.test.flowdat.com'
  84. env_file:
  85. - running.env
  86. - host.env
  87. - cablemodem.host.env
  88. - cablemodem.oauth.env
  89. volumes:
  90. - './cablemodem/:/opt/cablemodem'
  91. - './cablemodem/web/uploads:/opt/cablemodem/web/uploads'
  92. radius:
  93. image: 'docker.infra.flowdat.com/fd3/radius:latest'
  94. restart: 'on-failure:10'
  95. links:
  96. - 'mysql:mysql'
  97. - base
  98. - amqp
  99. - 'base:base.test.flowdat.com'
  100. env_file:
  101. - running.env
  102. - host.env
  103. - radius.host.env
  104. - radius.oauth.env
  105. volumes:
  106. - './radius/:/opt/radius'
  107. dhcp:
  108. image: 'docker.infra.flowdat.com/fd3/dhcp:latest'
  109. restart: 'on-failure:10'
  110. links:
  111. - 'mysql:mysql'
  112. - base
  113. - amqp
  114. - 'base:base.test.flowdat.com'
  115. env_file:
  116. - running.env
  117. - host.env
  118. - dhcp.host.env
  119. - dhcp.oauth.env
  120. volumes:
  121. - './dhcp/:/opt/dhcp'
  122. mysql:
  123. image: 'docker.infra.flowdat.com/fd3/mysql:latest'
  124. build:
  125. context: ./extra/mysql
  126. env_file:
  127. - mysql.host.env
  128. volumes:
  129. - './mysql/:/var/lib/mysql/'
  130. amqp:
  131. image: 'rabbitmq:3-management'
  132. restart: 'on-failure:10'
  133. mongodb:
  134. image: 'mongo:3.4'
  135. volumes:
  136. - './mongodb:/data/db'
  137. redis:
  138. image: 'redis:latest'
  139. command: 'redis-server --appendonly yes'
  140. restart: 'on-failure:10'
  141. genieacs-cwmp:
  142. build:
  143. context: extra/genieacs/genieacs-cwmp
  144. links:
  145. - mongodb
  146. - redis
  147. ports:
  148. - '7547:7547'
  149. restart: 'on-failure:10'
  150. genieacs-nbi:
  151. build:
  152. context: extra/genieacs/genieacs-nbi
  153. links:
  154. - mongodb
  155. - redis
  156. ports:
  157. - '7557:7557'
  158. restart: 'on-failure:10'
  159. genieacs-fs:
  160. build:
  161. context: extra/genieacs/genieacs-fs
  162. links:
  163. - mongodb
  164. - redis
  165. ports:
  166. - '7567:7567'
  167. restart: 'on-failure:10'
  168. genieacs-gui:
  169. build:
  170. context: extra/genieacs/genieacs-gui
  171. links:
  172. - genieacs-nbi
  173. ports:
  174. - '3001:3000'
  175. restart: 'on-failure:10'
  176. freeradius:
  177. image: 'docker.infra.flowdat.com/fd3/freeradius:latest'
  178. links:
  179. - mysql
  180. env_file:
  181. - mysql.host.env
  182. - freeradius.host.env
  183. grafana:
  184. image: grafana/grafana
  185. links:
  186. - mysql
  187. restart: 'on-failure:10'
  188. env_file:
  189. - mysql.host.env
  190. volumes:
  191. - './extra/statsd/grafana/lib:/var/lib/grafana'
  192. statsd:
  193. build:
  194. context: ./extra/statsd/statsd
  195. image: 'docker.infra.flowdat.com/fd3/statsd:latest'
  196. ports:
  197. - '8125:8125/udp'
  198. links:
  199. - mysql
  200. - mongodb
  201. restart: 'on-failure:10'
  202. volumes:
  203. - './extra/statsd/statsd/statsd.config.js:/opt/config/statsd.config.js'
  204. jsendpoint:
  205. build:
  206. context: ./extra/statsd/endpoint/json
  207. image: 'docker.infra.flowdat.com/fd3/jsonep:latest'
  208. volumes:
  209. - './extra/statsd/endpoint/json:/opt/datasource'
  210. links:
  211. - jsonep_mysql
  212. - jsonep_mongo
  213. restart: 'on-failure:10'
  214. jsonep_mysql:
  215. build:
  216. context: ./extra/statsd/endpoint/mysql
  217. image: 'docker.infra.flowdat.com/fd3/jsonep_mysql:latest'
  218. volumes:
  219. - './extra/statsd/endpoint/mysql:/opt/datasource'
  220. links:
  221. - mysql
  222. env_file:
  223. - mysql.host.env
  224. restart: 'on-failure:10'
  225. jsonep_mongo:
  226. build:
  227. context: ./extra/statsd/endpoint/mongodb
  228. image: 'docker.infra.flowdat.com/fd3/jsonep_mongo:latest'
  229. volumes:
  230. - './extra/statsd/endpoint/mongodb:/opt/datasource'
  231. links:
  232. - mongodb
  233. restart: 'on-failure:10'
  234. supervisord:
  235. build:
  236. context: ./extra/supervisord
  237. image: 'docker.infra.flowdat.com/fd3/supervisord:latest'
  238. privileged: true
  239. restart: 'on-failure:10'
  240. volumes:
  241. - './extra/supervisord/:/etc/supervisord/'
  242. - './extra/supervisord/var/:/var/log/supervisor/'
  243. - './extra/supervisord/sshd_config:/etc/ssh/sshd_config'
  244. - './extra/supervisord/bin/fiberhome:/usr/bin/fiberhome'
  245. - './extra/supervisord/bin/fiberlink:/usr/bin/fiberlink'
  246. base_log_worker:
  247. image: 'docker.infra.flowdat.com/fd3/base:latest'
  248. build:
  249. context: ./base/
  250. command: 'bin/console rabbitmq:consumer log_consumer'
  251. restart: 'on-failure:10'
  252. links:
  253. - mysql
  254. - base
  255. - amqp
  256. - 'nginx:base.test.flowdat.com'
  257. volumes:
  258. - './base/:/opt/base'
  259. ftth_command_worker:
  260. image: 'docker.infra.flowdat.com/fd3/ftth:latest'
  261. build:
  262. context: ./ftth/
  263. command: 'bin/console rabbitmq:consumer command_consumer'
  264. restart: 'on-failure:10'
  265. links:
  266. - mysql
  267. - base
  268. - amqp
  269. - 'nginx:base.test.flowdat.com'
  270. volumes:
  271. - './ftth/:/opt/ftth'
  272. ftth_tasklogger_worker:
  273. image: 'docker.infra.flowdat.com/fd3/ftth:latest'
  274. build:
  275. context: ./ftth/
  276. command: 'bin/console rabbitmq:consumer flowdat_tasklogger'
  277. restart: 'on-failure:10'
  278. links:
  279. - mysql
  280. - base
  281. - amqp
  282. - 'nginx:base.test.flowdat.com'
  283. volumes:
  284. - './ftth/:/opt/ftth'
  285. stats_command_worker:
  286. image: 'docker.infra.flowdat.com/fd3/ftth:latest'
  287. build:
  288. context: ./stats/
  289. command: 'bin/console rabbitmq:consumer command_consumer'
  290. environment:
  291. - ./extra/supervisord/=/etc/supervisord/
  292. - ./extra/supervisord/var/=/var/log/supervisor/
  293. - ./extra/supervisord/sshd_config=/etc/ssh/sshd_config
  294. - ./extra/supervisord/bin/fiberhome=/usr/bin/fiberhome
  295. - ./extra/supervisord/bin/fiberlink=/usr/bin/fiberlink