docker-compose.yml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408
  1. version: "2"
  2. services:
  3. base:
  4. restart: always
  5. image: fd3-base
  6. build:
  7. context: ./base
  8. links:
  9. - mysql:mysql
  10. - amqp:amqp
  11. env_file:
  12. - host.env
  13. environment:
  14. VIRTUAL_HOST: base.fd3.flowdat.com
  15. HTTPS_METHOD: nohttps
  16. volumes:
  17. - ./base/:/opt/base/
  18. ftth:
  19. restart: always
  20. image: fd3-ftth
  21. build:
  22. context: ./ftth
  23. links:
  24. - mysql:mysql
  25. - base:base
  26. - nginx-proxy:base.fd3.flowdat.com
  27. - nginx-proxy:mapas.fd3.flowdat.com
  28. - amqp:amqp
  29. env_file:
  30. - host.env
  31. environment:
  32. VIRTUAL_HOST: ftth.fd3.flowdat.com
  33. OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
  34. OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
  35. HTTPS_METHOD: nohttps
  36. #LETSENCRYPT_HOST: ftth.fd3.flowdat.com
  37. #LETSENCRYPT_EMAIL: andrade.luciano@gmail.com
  38. AMQP_KEY: ftth
  39. volumes:
  40. - ./ftth/:/opt/ftth/
  41. radius:
  42. restart: always
  43. image: fd3-radius
  44. build:
  45. context: ./radius
  46. links:
  47. - mysql:mysql
  48. - base:base
  49. - nginx-proxy:base.fd3.flowdat.com
  50. - nginx-proxy:mapas.fd3.flowdat.com
  51. - nginx-proxy:ftth.fd3.flowdat.com
  52. - nginx-proxy:stats.fd3.flowdat.com
  53. - nginx-proxy:radius.fd3.flowdat.com
  54. - amqp:amqp
  55. env_file:
  56. - host.env
  57. environment:
  58. VIRTUAL_HOST: radius.fd3.flowdat.com
  59. OAUTH_CLIENT_ID : 4_2jmm87sirewwwsgk0cc0occ8kgk8cwk0ook4kkw8cgw0kg0gg4
  60. OAUTH_CLIENT_SECRET : 4ya40zu3d1c0go8oc4gw8kw8gww8cskssok4gcokk80ks00ss8
  61. HTTPS_METHOD: nohttps
  62. #LETSENCRYPT_HOST: ftth.fd3.flowdat.com
  63. #LETSENCRYPT_EMAIL: andrade.luciano@gmail.com
  64. volumes:
  65. - ./radius/:/opt/radius/
  66. mapas:
  67. restart: always
  68. image: fd3-mapas
  69. build:
  70. context: ./mapas
  71. links:
  72. - mysql:mysql
  73. - base:base
  74. - nginx-proxy:base.fd3.flowdat.com
  75. - nginx-proxy:ftth.fd3.flowdat.com
  76. - amqp:amqp
  77. env_file:
  78. - host.env
  79. environment:
  80. VIRTUAL_HOST: mapas.fd3.flowdat.com
  81. HTTPS_METHOD: nohttps
  82. OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
  83. OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
  84. volumes:
  85. - ./mapas/:/opt/mapas/
  86. stats:
  87. restart: always
  88. image: fd3-stats
  89. build:
  90. context: ./stats
  91. links:
  92. - mysql:mysql
  93. - base:base
  94. - nginx-proxy:base.fd3.flowdat.com
  95. - nginx-proxy:geoserver.fd3.flowdat.com
  96. - amqp:amqp
  97. - geoserver:geoserver
  98. - mysql_jsonendpoint:mysql_jsonendpoint
  99. - mongodb_jsonendpoint:mongodb_jsonendpoint
  100. env_file:
  101. - host.env
  102. environment:
  103. VIRTUAL_HOST: stats.fd3.flowdat.com
  104. HTTPS_METHOD: nohttps
  105. OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
  106. OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
  107. AMQP_KEY: stats
  108. volumes:
  109. - ./stats/:/opt/stats/
  110. - ./geoserver/geoserver-shapes:/var/www/shapes
  111. cablemodem:
  112. restart: always
  113. image: fd3-cablemodem
  114. build:
  115. context: ./cablemodem
  116. links:
  117. - mysql:mysql
  118. - base:base
  119. - nginx-proxy:base.fd3.flowdat.com
  120. - nginx-proxy:mapas.fd3.flowdat.com
  121. - nginx-proxy:ftth.fd3.flowdat.com
  122. - nginx-proxy:stats.fd3.flowdat.com
  123. - nginx-proxy:radius.fd3.flowdat.com
  124. - amqp:amqp
  125. env_file:
  126. - host.env
  127. environment:
  128. VIRTUAL_HOST: cablemodem.fd3.flowdat.com
  129. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  130. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  131. HTTPS_METHOD: nohttps
  132. volumes:
  133. - ./cablemodem/:/opt/cablemodem/
  134. mysql:
  135. restart: always
  136. environment:
  137. MYSQL_ROOT_PASSWORD: 235r2342gtfsw
  138. MYSQL_USER: iksop
  139. MYSQL_PASSWORD: 235r2342gtfsw
  140. volumes:
  141. - ./mysql/:/var/lib/mysql/
  142. image: mysql:5.7
  143. amqp:
  144. restart: always
  145. image: rabbitmq:3-management
  146. restart: always
  147. ports:
  148. - "8072:15672"
  149. ftth_worker:
  150. restart: always
  151. image: fd3-ftth
  152. build:
  153. context: ./ftth
  154. command: bin/console rabbitmq:consumer flowdat_tasklogger
  155. restart: always
  156. links:
  157. - mysql:mysql
  158. - base:base
  159. - amqp:amqp
  160. - nginx-proxy:base.fd3.flowdat.com
  161. environment:
  162. HOST_FTTH: ftth.fd3.flowdat.com
  163. HOST_BASE: base.fd3.flowdat.com
  164. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  165. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  166. AMQP_KEY: ftth
  167. volumes:
  168. - ./ftth/:/opt/ftth/
  169. env_file:
  170. - host.env
  171. command_consumer_worker:
  172. restart: always
  173. image: fd3-ftth
  174. build:
  175. context: ./ftth
  176. command: bin/console rabbitmq:consumer command_consumer
  177. restart: always
  178. links:
  179. - mysql:mysql
  180. - base:base
  181. - amqp:amqp
  182. - nginx-proxy:base.fd3.flowdat.com
  183. environment:
  184. HOST_FTTH: ftth.fd3.flowdat.com
  185. HOST_BASE: base.fd3.flowdat.com
  186. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  187. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  188. AMQP_KEY: ftth
  189. volumes:
  190. - ./ftth/:/opt/ftth/
  191. env_file:
  192. - host.env
  193. stats_command_worker:
  194. restart: always
  195. image: docker.infra.flowdat.com/fd3/stats:latest
  196. build:
  197. context: ./stats
  198. command: bin/console rabbitmq:consumer command_consumer
  199. restart: always
  200. links:
  201. - mysql:mysql
  202. - base:base
  203. - amqp:amqp
  204. - nginx-proxy:base.fd3.flowdat.com
  205. - geoserver:geoserver
  206. - nginx-proxy:geoserver.fd3.flowdat.com
  207. environment:
  208. HOST_STATS: stats.fd3.flowdat.com
  209. HOST_FTTH: ftth.fd3.flowdat.com
  210. HOST_BASE: base.fd3.flowdat.com
  211. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  212. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  213. AMQP_KEY: stats
  214. volumes:
  215. - ./stats:/opt/stats
  216. - ./geoserver/geoserver-shapes:/var/www/shapes
  217. env_file:
  218. - host.env
  219. log_consumer_worker:
  220. restart: always
  221. image: docker.infra.flowdat.com/fd3/base:latest
  222. command: bin/console rabbitmq:consumer log_consumer
  223. links:
  224. - mysql:mysql
  225. - base:base
  226. - amqp:amqp
  227. - nginx-proxy:base.fd3.flowdat.com
  228. env_file:
  229. - host.env
  230. environment:
  231. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  232. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  233. AMQP_KEY: base
  234. phpmyadmin:
  235. restart: always
  236. image: phpmyadmin/phpmyadmin
  237. links:
  238. - mysql:db
  239. environment:
  240. MYSQL_ROOT_PASSWORD: 235r2342gtfsw
  241. VIRTUAL_HOST: pma.fd3.flowdat.com
  242. ports:
  243. - 8080:80
  244. grafana:
  245. restart: always
  246. image: grafana/grafana:master
  247. links:
  248. - jsonendpoint:endpoint
  249. - mysql_jsonendpoint:endpoint
  250. - mongodb_jsonendpoint:endpoint
  251. - mysql:mysql
  252. ports:
  253. - 3000:3000
  254. volumes:
  255. - ./statsd/grafana/lib:/var/lib/grafana
  256. environment:
  257. VIRTUAL_HOST: grafana.fd3.flowdat.com
  258. HTTPS_METHOD: nohttps
  259. #LETSENCRYPT_HOST: grafana.fd3.flowdat.com
  260. #LETSENCRYPT_EMAIL: andrade.luciano@gmail.com
  261. GF_SECURITY_ADMIN_PASSWORD: "queRini6"
  262. GF_INSTALL_PLUGINS: grafana-simple-json-datasource
  263. GF_AUTH_ANONYMOUS_ORG_NAME: "Main Org."
  264. GF_AUTH_ANONYMOUS_ORG_ROLE: 'Viewer'
  265. GF_AUTH_ANONYMOUS_ENABLED: "true"
  266. jsonendpoint:
  267. restart: always
  268. image: fd3_simple_json_endpoint
  269. ports:
  270. - 9003:8000
  271. build:
  272. context: ./extra/statsd/endpoint/json
  273. links:
  274. - mysql_jsonendpoint:mysql_jsonendpoint
  275. - mongodb_jsonendpoint:mongodb_jsonendpoint
  276. volumes:
  277. - ./extra/statsd/endpoint/json:/opt/datasource
  278. environment:
  279. TIMEOUT: 60000
  280. mysql_jsonendpoint:
  281. restart: always
  282. image: fd3_simple_json_endpoint_mysql
  283. environment:
  284. MYSQL_ROOT_PASSWORD: 235r2342gtfsw
  285. links:
  286. - mysql:mysql
  287. ports:
  288. - 9000:8000
  289. build:
  290. context: ./extra/statsd/endpoint/mysql
  291. volumes:
  292. - ./extra/statsd/endpoint/mysql:/opt/datasource
  293. mongodb_jsonendpoint:
  294. restart: always
  295. image: fd3_simple_json_endpoint_mongo
  296. links:
  297. - mongodb:mongodb
  298. ports:
  299. - 9002:8000
  300. build:
  301. context: ./extra/statsd/endpoint/mongodb
  302. volumes:
  303. - ./extra/statsd/endpoint/mongodb:/opt/datasource
  304. mongo_express:
  305. image: mongo-express
  306. ports:
  307. - 8081:8081
  308. links:
  309. - mongodb:mongo
  310. mongodb:
  311. volumes:
  312. - ./mongodb:/data/db
  313. image: mongo:3.4
  314. statsd:
  315. restart: always
  316. image: fd3-statsd-mysql-backend
  317. build:
  318. context: ./extra/statsd/statsd
  319. ports:
  320. - "8125:8125/udp"
  321. links:
  322. - mongodb:mongodb
  323. - mysql:mysql
  324. volumes:
  325. - ./statsd/statsd/:/opt/config
  326. - ./statsd/backend/mongodb/mongodb.js:/opt/statsd/backends/mongodb.js
  327. supervisord:
  328. restart: always
  329. image: fd3-supervisord
  330. build:
  331. context: ./extra/supervisord
  332. ports:
  333. - "9001:9001"
  334. privileged: true
  335. env_file:
  336. - host.env
  337. links:
  338. - mongodb:mongodb
  339. - mysql:mysql
  340. - nginx-proxy:geoserver.fd3.flowdat.com
  341. - geoserver:geoserver
  342. volumes:
  343. - ./supervisord/:/etc/supervisord/
  344. - ./supervisord/var/:/var/log/supervisor/
  345. - ./supervisord/sshd_config:/etc/ssh/sshd_config
  346. - ./supervisord/bin/fiberhome:/usr/bin/fiberhome
  347. - ./supervisord/bin/fiberlink:/usr/bin/fiberlink
  348. environment:
  349. TERM: "xterm"
  350. geoserver:
  351. build:
  352. context: ./extra/geoserver/
  353. image: 'docker.infra.flowdat.com/fd3/geoserver:latest'
  354. links:
  355. - nginx-proxy:geoserver.fd3.flowdat.com
  356. volumes:
  357. - ./extra/geoserver/geoserver-data/styles:/opt/geoserver/data_dir/styles
  358. - ./geoserver/geoserver-shapes:/var/www/shapes
  359. ports:
  360. - 8082:8080
  361. restart: unless-stopped
  362. nginx-proxy:
  363. build:
  364. context: ./extra/nginx/
  365. image: 'docker.infra.flowdat.com/fd3/nginx:latest'
  366. env_file:
  367. - host.env
  368. restart: always
  369. ports:
  370. - '80:80'
  371. - '443:443'
  372. volumes:
  373. - '/var/run/docker.sock:/tmp/docker.sock:ro'
  374. - './extra/nginx/certs:/etc/nginx/certs:ro'
  375. - './extra/nginx/vhost.d:/etc/nginx/vhost.d'
  376. - './extra/nginx/share:/usr/share/nginx/html'
  377. redis:
  378. image: redis:latest
  379. restart: always