Переглянути джерело

FD3-449 Agrego un worker para módulo CM.

Maxi Schvindt 7 роки тому
батько
коміт
8bba34031a
1 змінених файлів з 461 додано та 0 видалено
  1. 461 0
      docker-compose.yml

+ 461 - 0
docker-compose.yml

@@ -0,0 +1,461 @@
+version: "2"
+services:
+
+  base:
+    restart: always
+    image: fd3-base
+    build:
+      context: ./base
+    links:
+      - mysql:mysql
+      - amqp:amqp
+    env_file:
+      - host.env
+    environment:
+      VIRTUAL_HOST: base.fd3.flowdat.com
+      HTTPS_METHOD: nohttps
+    volumes:
+      - ./base/:/opt/base/
+
+  ftth:
+    restart: always
+    image: fd3-ftth
+    build:
+      context: ./ftth
+    links:
+      - mysql:mysql
+      - base:base
+      - nginx-proxy:base.fd3.flowdat.com
+      - nginx-proxy:mapas.fd3.flowdat.com
+      - amqp:amqp
+    env_file:
+      - host.env
+    environment:
+      VIRTUAL_HOST: ftth.fd3.flowdat.com
+      OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
+      OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
+      HTTPS_METHOD: nohttps
+      #LETSENCRYPT_HOST: ftth.fd3.flowdat.com
+      #LETSENCRYPT_EMAIL: andrade.luciano@gmail.com
+      AMQP_KEY: ftth
+    volumes:
+      - ./ftth/:/opt/ftth/
+
+  radius:
+    restart: always
+    image: fd3-radius
+    build:
+      context: ./radius
+    links:
+      - mysql:mysql
+      - base:base
+      - nginx-proxy:base.fd3.flowdat.com
+      - nginx-proxy:mapas.fd3.flowdat.com
+      - nginx-proxy:ftth.fd3.flowdat.com
+      - nginx-proxy:stats.fd3.flowdat.com
+      - nginx-proxy:radius.fd3.flowdat.com
+      - amqp:amqp
+    env_file:
+      - host.env
+    environment:
+      VIRTUAL_HOST: radius.fd3.flowdat.com
+      OAUTH_CLIENT_ID : 4_2jmm87sirewwwsgk0cc0occ8kgk8cwk0ook4kkw8cgw0kg0gg4
+      OAUTH_CLIENT_SECRET : 4ya40zu3d1c0go8oc4gw8kw8gww8cskssok4gcokk80ks00ss8
+      HTTPS_METHOD: nohttps
+      #LETSENCRYPT_HOST: ftth.fd3.flowdat.com
+      #LETSENCRYPT_EMAIL: andrade.luciano@gmail.com
+    volumes:
+      - ./radius/:/opt/radius/
+
+  mapas:
+    restart: always
+    image: fd3-mapas
+    build:
+      context: ./mapas
+    links:
+      - mysql:mysql
+      - base:base
+      - nginx-proxy:base.fd3.flowdat.com
+      - nginx-proxy:ftth.fd3.flowdat.com
+      - amqp:amqp
+    env_file:
+      - host.env
+    environment:
+      VIRTUAL_HOST: mapas.fd3.flowdat.com
+      HTTPS_METHOD: nohttps
+      OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
+      OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
+
+    volumes:
+      - ./mapas/:/opt/mapas/
+
+  stats:
+    restart: always
+    image: fd3-stats
+    build:
+      context: ./stats
+    links:
+      - mysql:mysql
+      - base:base
+      - nginx-proxy:base.fd3.flowdat.com
+      - nginx-proxy:geoserver.fd3.flowdat.com
+      - amqp:amqp
+      - geoserver:geoserver
+      - mysql_jsonendpoint:mysql_jsonendpoint
+      - mongodb_jsonendpoint:mongodb_jsonendpoint
+    env_file:
+      - host.env
+    environment:
+      VIRTUAL_HOST: stats.fd3.flowdat.com
+      HTTPS_METHOD: nohttps
+      OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
+      OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
+      AMQP_KEY: stats
+    volumes:
+      - ./stats/:/opt/stats/
+      - ./geoserver/geoserver-shapes:/var/www/shapes
+
+  cablemodem:
+    restart: always
+    image: fd3-cablemodem
+    build:
+      context: ./cablemodem
+    links:
+      - mysql:mysql
+      - base:base
+      - nginx-proxy:base.fd3.flowdat.com
+      - nginx-proxy:mapas.fd3.flowdat.com
+      - nginx-proxy:ftth.fd3.flowdat.com
+      - nginx-proxy:stats.fd3.flowdat.com
+      - nginx-proxy:radius.fd3.flowdat.com
+      - amqp:amqp
+    env_file:
+      - host.env
+    environment:
+      VIRTUAL_HOST: cablemodem.fd3.flowdat.com
+      OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
+      OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
+      HTTPS_METHOD: nohttps
+      AMQP_KEY: cablemodem
+    volumes:
+      - ./cablemodem/:/opt/cablemodem/
+  
+  dhcp:
+    restart: always
+    image: fd3-cablemodem
+    build:
+      context: ./cablemodem
+    links:
+      - mysql:mysql
+      - base:base
+      - nginx-proxy:base.fd3.flowdat.com
+      - nginx-proxy:mapas.fd3.flowdat.com
+      - nginx-proxy:ftth.fd3.flowdat.com
+      - nginx-proxy:stats.fd3.flowdat.com
+      - nginx-proxy:radius.fd3.flowdat.com
+      - amqp:amqp
+    env_file:
+      - host.env
+    environment:
+      VIRTUAL_HOST: dhcp.fd3.flowdat.com
+      OAUTH_CLIENT_ID : 1_3323sq6urn8kwccg8s4ok848ggwwgkw4c08wsc4cwkc08osocc
+      OAUTH_CLIENT_SECRET : 5w7gx6ptdoo4g8cwwo88o8gowosgco84sso08ssow0osg88g8k
+      HTTPS_METHOD: nohttps
+    volumes:
+      - ./cablemodem/:/opt/cablemodem/   
+
+  mysql:
+    restart: always
+    environment:
+        MYSQL_ROOT_PASSWORD: 235r2342gtfsw
+        MYSQL_USER: iksop
+        MYSQL_PASSWORD: 235r2342gtfsw
+    volumes:
+      - ./mysql/:/var/lib/mysql/
+    image: mysql:5.7
+
+  amqp:
+    restart: always
+    image: rabbitmq:3-management
+    restart: always
+    ports:
+      - "8072:15672"
+
+  ftth_worker:
+    restart: always
+    image: fd3-ftth
+    build:
+      context: ./ftth
+    command: bin/console rabbitmq:consumer flowdat_tasklogger
+    restart: always
+    links:
+      - mysql:mysql
+      - base:base
+      - amqp:amqp
+      - nginx-proxy:base.fd3.flowdat.com
+    environment:
+      HOST_FTTH: ftth.fd3.flowdat.com
+      HOST_BASE: base.fd3.flowdat.com
+      OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
+      OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
+      AMQP_KEY: ftth
+    volumes:
+      - ./ftth/:/opt/ftth/
+    env_file:
+      - host.env
+
+  command_consumer_worker:
+    restart: always
+    image: fd3-ftth
+    build:
+      context: ./ftth
+    command: bin/console rabbitmq:consumer command_consumer
+    restart: always
+    links:
+      - mysql:mysql
+      - base:base
+      - amqp:amqp
+      - nginx-proxy:base.fd3.flowdat.com
+    environment:
+      HOST_FTTH: ftth.fd3.flowdat.com
+      HOST_BASE: base.fd3.flowdat.com
+      OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
+      OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
+      AMQP_KEY: ftth
+    volumes:
+      - ./ftth/:/opt/ftth/
+    env_file:
+      - host.env
+
+  stats_command_worker:
+    restart: always
+    image: docker.infra.flowdat.com/fd3/stats:latest
+    build:
+      context: ./stats
+    command: bin/console rabbitmq:consumer command_consumer
+    restart: always
+    links:
+      - mysql:mysql
+      - base:base
+      - amqp:amqp
+      - nginx-proxy:base.fd3.flowdat.com
+      - geoserver:geoserver
+      - nginx-proxy:geoserver.fd3.flowdat.com
+    environment:
+      HOST_STATS: stats.fd3.flowdat.com
+      HOST_FTTH: ftth.fd3.flowdat.com
+      HOST_BASE: base.fd3.flowdat.com
+      OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
+      OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
+      AMQP_KEY: stats
+    volumes:
+      - ./stats:/opt/stats
+      - ./geoserver/geoserver-shapes:/var/www/shapes
+    env_file:
+      - host.env
+
+  log_consumer_worker:
+    restart: always
+    image: docker.infra.flowdat.com/fd3/base:latest
+    build:
+      context: ./base
+    command: bin/console rabbitmq:consumer log_consumer
+    links:
+      - mysql:mysql
+      - base:base
+      - amqp:amqp
+      - nginx-proxy:base.fd3.flowdat.com
+    env_file:
+      - host.env
+    environment:
+      OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
+      OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
+      AMQP_KEY: base
+    volumes:
+      - ./base/:/opt/base/
+    
+
+  phpmyadmin:
+    restart: always
+    image: phpmyadmin/phpmyadmin
+    links:
+      - mysql:db
+    environment:
+      MYSQL_ROOT_PASSWORD: 235r2342gtfsw
+      VIRTUAL_HOST: pma.fd3.flowdat.com
+    ports:
+      - 8080:80
+
+
+  grafana:
+    restart: always
+    image: grafana/grafana:master
+    links:
+     - jsonendpoint:endpoint
+     - mysql_jsonendpoint:endpoint
+     - mongodb_jsonendpoint:endpoint
+     - mysql:mysql
+    ports:
+     - 3000:3000
+    volumes:
+     - ./statsd/grafana/lib:/var/lib/grafana
+    environment:
+      VIRTUAL_HOST: grafana.fd3.flowdat.com
+      HTTPS_METHOD: nohttps
+      #LETSENCRYPT_HOST: grafana.fd3.flowdat.com
+      #LETSENCRYPT_EMAIL: andrade.luciano@gmail.com
+      GF_SECURITY_ADMIN_PASSWORD: "queRini6"
+      GF_INSTALL_PLUGINS: grafana-simple-json-datasource
+      GF_AUTH_ANONYMOUS_ORG_NAME: "Main Org."
+      GF_AUTH_ANONYMOUS_ORG_ROLE: 'Viewer'
+      GF_AUTH_ANONYMOUS_ENABLED: "true"
+
+
+  jsonendpoint:
+    restart: always
+    image: fd3_simple_json_endpoint
+    ports:
+      - 9003:8000
+    build:
+      context: ./extra/statsd/endpoint/json
+    links:
+        - mysql_jsonendpoint:mysql_jsonendpoint
+        - mongodb_jsonendpoint:mongodb_jsonendpoint
+    volumes:
+      - ./extra/statsd/endpoint/json:/opt/datasource
+    environment:
+      TIMEOUT: 60000
+
+  mysql_jsonendpoint:
+    restart: always
+    image: fd3_simple_json_endpoint_mysql
+    environment:
+      MYSQL_ROOT_PASSWORD: 235r2342gtfsw
+    links:
+      - mysql:mysql
+    ports:
+      - 9000:8000
+    build:
+      context: ./extra/statsd/endpoint/mysql
+    volumes:
+      - ./extra/statsd/endpoint/mysql:/opt/datasource
+
+
+  mongodb_jsonendpoint:
+    restart: always
+    image: fd3_simple_json_endpoint_mongo
+    links:
+      - mongodb:mongodb
+    ports:
+      - 9002:8000
+    build:
+      context: ./extra/statsd/endpoint/mongodb
+    volumes:
+      - ./extra/statsd/endpoint/mongodb:/opt/datasource
+
+
+  mongo_express:
+    image: mongo-express
+    ports:
+      - 8081:8081
+    links:
+      - mongodb:mongo
+
+  mongodb:
+    volumes:
+      - ./mongodb:/data/db
+    image: mongo:3.4
+
+  statsd:
+    restart: always
+    image: fd3-statsd-mysql-backend
+    build:
+      context: ./extra/statsd/statsd
+    ports:
+      - "8125:8125/udp"
+    links:
+      - mongodb:mongodb
+      - mysql:mysql
+    volumes:
+      - ./statsd/statsd/:/opt/config
+      - ./statsd/backend/mongodb/mongodb.js:/opt/statsd/backends/mongodb.js
+
+  supervisord:
+    restart: always
+    image: fd3-supervisord
+    build:
+      context: ./extra/supervisord
+    ports:
+      - "9001:9001"
+    privileged: true
+    env_file:
+     - host.env
+    links:
+      - mongodb:mongodb
+      - mysql:mysql
+      - nginx-proxy:geoserver.fd3.flowdat.com
+      - geoserver:geoserver
+    volumes:
+      - ./supervisord/:/etc/supervisord/
+      - ./supervisord/var/:/var/log/supervisor/
+      - ./supervisord/sshd_config:/etc/ssh/sshd_config
+      - ./supervisord/bin/fiberhome:/usr/bin/fiberhome
+      - ./supervisord/bin/fiberlink:/usr/bin/fiberlink
+    environment:
+      TERM: "xterm"
+
+  geoserver:
+    build:
+      context: ./extra/geoserver/
+    image: 'docker.infra.flowdat.com/fd3/geoserver:latest'
+    links:
+      - nginx-proxy:geoserver.fd3.flowdat.com
+    volumes:
+      - ./extra/geoserver/geoserver-data/styles:/opt/geoserver/data_dir/styles
+      - ./geoserver/geoserver-shapes:/var/www/shapes
+    ports:
+      - 8082:8080
+    restart: unless-stopped
+
+  nginx-proxy:
+        build:
+            context: ./extra/nginx/
+        image: 'docker.infra.flowdat.com/fd3/nginx:latest'
+        env_file:
+            - host.env
+        restart: always
+        ports:
+            - '80:80'
+            - '443:443'
+        volumes:
+            - '/var/run/docker.sock:/tmp/docker.sock:ro'
+            - './extra/nginx/certs:/etc/nginx/certs:ro'
+            - './extra/nginx/vhost.d:/etc/nginx/vhost.d'
+            - './extra/nginx/share:/usr/share/nginx/html'
+
+  redis:
+    image: redis:latest
+    restart: always
+
+  command_consumer_worker_cm:
+    restart: always
+    image: fd3-cablemodem
+    build:
+      context: ./cablemodem
+    command: bin/console rabbitmq:consumer command_consumer
+    restart: always
+    links:
+      - mysql:mysql
+      - base:base
+      - amqp:amqp
+      - nginx-proxy:base.fd3.flowdat.com
+    environment:
+      HOST_CABLEMODEM: cablemodem.fd3.flowdat.com
+      HOST_BASE: base.fd3.flowdat.com
+      OAUTH_CLIENT_ID: 1_4gs3n2b9s7mso00kgogoks4k0ogk0ggs0w0k4k484gkowcg08k
+      OAUTH_CLIENT_SECRET: 60n93pmoh10c848wg0sc0844ow84sco0sc8gkockow4sg4sc0g
+      AMQP_KEY: cablemodem
+    volumes:
+      - ./cablemodem/:/opt/cablemodem/
+    env_file:
+      - host.env