docker-compose.yml 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480
  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_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
  130. OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
  131. HTTPS_METHOD: nohttps
  132. AMQP_KEY: cablemodem
  133. volumes:
  134. - ./cablemodem/:/opt/cablemodem/
  135. dhcp:
  136. restart: always
  137. image: fd3-cablemodem
  138. build:
  139. context: ./cablemodem
  140. links:
  141. - mysql:mysql
  142. - base:base
  143. - nginx-proxy:base.fd3.flowdat.com
  144. - nginx-proxy:mapas.fd3.flowdat.com
  145. - nginx-proxy:ftth.fd3.flowdat.com
  146. - nginx-proxy:stats.fd3.flowdat.com
  147. - nginx-proxy:radius.fd3.flowdat.com
  148. - amqp:amqp
  149. env_file:
  150. - host.env
  151. environment:
  152. VIRTUAL_HOST: dhcp.fd3.flowdat.com
  153. OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
  154. OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
  155. HTTPS_METHOD: nohttps
  156. volumes:
  157. - ./cablemodem/:/opt/cablemodem/
  158. mysql:
  159. restart: always
  160. environment:
  161. MYSQL_ROOT_PASSWORD: 235r2342gtfsw
  162. MYSQL_USER: iksop
  163. MYSQL_PASSWORD: 235r2342gtfsw
  164. volumes:
  165. - ./mysql/:/var/lib/mysql/
  166. image: mysql:5.7
  167. mongodb:
  168. volumes:
  169. - ./mongodb:/data/db
  170. image: mongo:3.4
  171. amqp:
  172. restart: always
  173. image: rabbitmq:3-management
  174. restart: always
  175. ports:
  176. - "8072:15672"
  177. phpmyadmin:
  178. restart: always
  179. image: phpmyadmin/phpmyadmin
  180. links:
  181. - mysql:db
  182. environment:
  183. MYSQL_ROOT_PASSWORD: 235r2342gtfsw
  184. VIRTUAL_HOST: pma.fd3.flowdat.com
  185. ports:
  186. - 8080:80
  187. grafana:
  188. restart: always
  189. image: grafana/grafana:master
  190. links:
  191. - jsonendpoint:endpoint
  192. - mysql_jsonendpoint:endpoint
  193. - mongodb_jsonendpoint:endpoint
  194. - mysql:mysql
  195. ports:
  196. - 3000:3000
  197. volumes:
  198. - ./statsd/grafana/lib:/var/lib/grafana
  199. environment:
  200. VIRTUAL_HOST: grafana.fd3.flowdat.com
  201. HTTPS_METHOD: nohttps
  202. #LETSENCRYPT_HOST: grafana.fd3.flowdat.com
  203. #LETSENCRYPT_EMAIL: andrade.luciano@gmail.com
  204. GF_SECURITY_ADMIN_PASSWORD: "queRini6"
  205. GF_INSTALL_PLUGINS: grafana-simple-json-datasource
  206. GF_AUTH_ANONYMOUS_ORG_NAME: "Main Org."
  207. GF_AUTH_ANONYMOUS_ORG_ROLE: 'Viewer'
  208. GF_AUTH_ANONYMOUS_ENABLED: "true"
  209. jsonendpoint:
  210. restart: always
  211. image: fd3_simple_json_endpoint
  212. ports:
  213. - 9003:8000
  214. build:
  215. context: ./extra/statsd/endpoint/json
  216. links:
  217. - mysql_jsonendpoint:mysql_jsonendpoint
  218. - mongodb_jsonendpoint:mongodb_jsonendpoint
  219. volumes:
  220. - ./extra/statsd/endpoint/json:/opt/datasource
  221. environment:
  222. TIMEOUT: 60000
  223. mysql_jsonendpoint:
  224. restart: always
  225. image: fd3_simple_json_endpoint_mysql
  226. environment:
  227. MYSQL_ROOT_PASSWORD: 235r2342gtfsw
  228. links:
  229. - mysql:mysql
  230. ports:
  231. - 9000:8000
  232. build:
  233. context: ./extra/statsd/endpoint/mysql
  234. volumes:
  235. - ./extra/statsd/endpoint/mysql:/opt/datasource
  236. mongodb_jsonendpoint:
  237. restart: always
  238. image: fd3_simple_json_endpoint_mongo
  239. links:
  240. - mongodb:mongodb
  241. ports:
  242. - 9002:8000
  243. build:
  244. context: ./extra/statsd/endpoint/mongodb
  245. volumes:
  246. - ./extra/statsd/endpoint/mongodb:/opt/datasource
  247. mongo_express:
  248. image: mongo-express
  249. ports:
  250. - 8081:8081
  251. links:
  252. - mongodb:mongo
  253. statsd:
  254. restart: always
  255. image: fd3-statsd-mysql-backend
  256. build:
  257. context: ./extra/statsd/statsd
  258. ports:
  259. - "8125:8125/udp"
  260. links:
  261. - mongodb:mongodb
  262. - mysql:mysql
  263. volumes:
  264. - ./statsd/statsd/:/opt/config
  265. - ./statsd/backend/mongodb/mongodb.js:/opt/statsd/backends/mongodb.js
  266. supervisord:
  267. restart: always
  268. image: fd3-supervisord
  269. build:
  270. context: ./extra/supervisord
  271. ports:
  272. - "9001:9001"
  273. privileged: true
  274. env_file:
  275. - host.env
  276. links:
  277. - mongodb:mongodb
  278. - mysql:mysql
  279. - nginx-proxy:geoserver.fd3.flowdat.com
  280. - geoserver:geoserver
  281. volumes:
  282. - ./supervisord/:/etc/supervisord/
  283. - ./supervisord/var/:/var/log/supervisor/
  284. - ./supervisord/sshd_config:/etc/ssh/sshd_config
  285. - ./supervisord/bin/fiberhome:/usr/bin/fiberhome
  286. - ./supervisord/bin/fiberlink:/usr/bin/fiberlink
  287. environment:
  288. TERM: "xterm"
  289. geoserver:
  290. build:
  291. context: ./extra/geoserver/
  292. image: 'docker.infra.flowdat.com/fd3/geoserver:latest'
  293. links:
  294. - nginx-proxy:geoserver.fd3.flowdat.com
  295. volumes:
  296. - ./extra/geoserver/geoserver-data/styles:/opt/geoserver/data_dir/styles
  297. - ./geoserver/geoserver-shapes:/var/www/shapes
  298. ports:
  299. - 8082:8080
  300. restart: unless-stopped
  301. nginx-proxy:
  302. build:
  303. context: ./extra/nginx/
  304. image: 'docker.infra.flowdat.com/fd3/nginx:latest'
  305. env_file:
  306. - host.env
  307. restart: always
  308. ports:
  309. - '80:80'
  310. - '443:443'
  311. volumes:
  312. - '/var/run/docker.sock:/tmp/docker.sock:ro'
  313. - './extra/nginx/certs:/etc/nginx/certs:ro'
  314. - './extra/nginx/vhost.d:/etc/nginx/vhost.d'
  315. - './extra/nginx/share:/usr/share/nginx/html'
  316. redis:
  317. image: redis:latest
  318. restart: always
  319. base_log_worker:
  320. restart: always
  321. image: fd3-base
  322. build:
  323. context: ./base
  324. command: bin/console rabbitmq:consumer log_consumer
  325. restart: always
  326. links:
  327. - mysql:mysql
  328. - base:base
  329. - amqp:amqp
  330. - nginx-proxy:base.fd3.flowdat.com
  331. environment:
  332. HOST_BASE: base.fd3.flowdat.com
  333. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  334. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  335. AMQP_KEY: base
  336. volumes:
  337. - ./base/:/opt/base/
  338. env_file:
  339. - host.env
  340. ftth_tasklogger_worker:
  341. restart: always
  342. image: fd3-ftth
  343. build:
  344. context: ./ftth
  345. command: bin/console rabbitmq:consumer flowdat_tasklogger
  346. restart: always
  347. links:
  348. - mysql:mysql
  349. - base:base
  350. - amqp:amqp
  351. - nginx-proxy:base.fd3.flowdat.com
  352. environment:
  353. HOST_FTTH: ftth.fd3.flowdat.com
  354. HOST_BASE: base.fd3.flowdat.com
  355. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  356. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  357. AMQP_KEY: ftth
  358. volumes:
  359. - ./ftth/:/opt/ftth/
  360. env_file:
  361. - host.env
  362. cablemodem_tasklogger_worker:
  363. restart: always
  364. image: fd3-cablemodem
  365. build:
  366. context: ./cablemodem
  367. command: bin/console rabbitmq:consumer flowdat_tasklogger
  368. restart: always
  369. links:
  370. - mysql:mysql
  371. - base:base
  372. - amqp:amqp
  373. - nginx-proxy:base.fd3.flowdat.com
  374. environment:
  375. HOST_CABLEMODEM: cablemodem.fd3.flowdat.com
  376. HOST_BASE: base.fd3.flowdat.com
  377. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  378. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  379. AMQP_KEY: cablemodem
  380. volumes:
  381. - ./cablemodem/:/opt/cablemodem/
  382. env_file:
  383. - host.env
  384. ftth_command_worker:
  385. restart: always
  386. image: fd3-ftth
  387. build:
  388. context: ./ftth
  389. command: bin/console rabbitmq:consumer command_consumer
  390. restart: always
  391. links:
  392. - mysql:mysql
  393. - base:base
  394. - amqp:amqp
  395. - nginx-proxy:base.fd3.flowdat.com
  396. environment:
  397. HOST_FTTH: ftth.fd3.flowdat.com
  398. HOST_BASE: base.fd3.flowdat.com
  399. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  400. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  401. AMQP_KEY: ftth
  402. volumes:
  403. - ./ftth/:/opt/ftth/
  404. env_file:
  405. - host.env
  406. stats_command_worker:
  407. restart: always
  408. image: docker.infra.flowdat.com/fd3/stats:latest
  409. build:
  410. context: ./stats
  411. command: bin/console rabbitmq:consumer command_consumer
  412. restart: always
  413. links:
  414. - mysql:mysql
  415. - base:base
  416. - amqp:amqp
  417. - nginx-proxy:base.fd3.flowdat.com
  418. - geoserver:geoserver
  419. - nginx-proxy:geoserver.fd3.flowdat.com
  420. environment:
  421. HOST_STATS: stats.fd3.flowdat.com
  422. HOST_FTTH: ftth.fd3.flowdat.com
  423. HOST_BASE: base.fd3.flowdat.com
  424. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  425. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  426. AMQP_KEY: stats
  427. volumes:
  428. - ./stats:/opt/stats
  429. - ./geoserver/geoserver-shapes:/var/www/shapes
  430. env_file:
  431. - host.env
  432. cablemodem_command_worker:
  433. restart: always
  434. image: fd3-cablemodem
  435. build:
  436. context: ./cablemodem
  437. command: bin/console rabbitmq:consumer command_consumer
  438. restart: always
  439. links:
  440. - mysql:mysql
  441. - base:base
  442. - amqp:amqp
  443. - nginx-proxy:base.fd3.flowdat.com
  444. environment:
  445. HOST_CABLEMODEM: cablemodem.fd3.flowdat.com
  446. HOST_BASE: base.fd3.flowdat.com
  447. OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
  448. OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
  449. AMQP_KEY: cablemodem
  450. volumes:
  451. - ./cablemodem/:/opt/cablemodem/
  452. env_file:
  453. - host.env