version: "3" services: httpd: image: spaship/httpd:latest restart: always logging: driver: none volumes: # - ./packages/home-spa/dist:/var/www/html/home # - ./packages/feedback-spa/dist:/var/www/html/feedback # - ./packages/notification-spa/dist:/var/www/html/notifications # - ./packages/search-spa/dist:/var/www/html/search # - ./packages/user-group-spa/build:/var/www/html/user-groups # - ./packages/developer-console-spa/build:/var/www/html/console # - ./packages/lighthouse-spa/dist:/var/www/html/lighthouse - ./packages/ssi-service/public/index.html:/var/www/html/index.html - ./packages/ssi-service/dist:/var/www/html/.ssi/nav - ./packages/ssi-service/dist:/var/www/html/assets ports: - 4200:8080 reverse-proxy: build: ./packages/reverse-proxy-service command: npm run dev env_file: ./packages/reverse-proxy-service/.env environment: PORT: 8000 COUCHDB_HOST: http://couchdb:5984 COUCHDB_SECRET: couchdbsecret123 # as defined in the couchdb service environment REDIS_HOST: redis MONGO_URL: mongodb://mongo:27017/apps-service volumes: - ./packages/reverse-proxy-service:/opt/app-root/src ports: - 5500:8000 depends_on: - couchdb - redis - mongo api-gateway: build: ./packages/api-gateway-service command: npm run dev env_file: ./packages/api-gateway-service/.env environment: REDIS_SERVICE_HOST: redis volumes: - ./packages/api-gateway-service:/usr/src ports: - 8080:8080 depends_on: - apps-service - feedback-service - user-group-service - notifications-service - search-service - lighthouse-service - api-catalog-service apps-service: build: ./packages/apps-service command: npm run dev env_file: ./packages/apps-service/.env environment: MONGO_URL: mongodb://mongo:27017/apps-service COUCHDB_ENDPOINT: http://couchdb:5984 # COUCHDB_ADMIN_TOKEN: "" # Basic volumes: - ./packages/apps-service:/opt/app-root/src ports: - 8081:8080 depends_on: - mongo - couchdb feedback-service: build: ./packages/feedback-service command: npm start env_file: ./packages/feedback-service/.env environment: DB_PATH: mongo REDIS_SERVICE_HOST: redis volumes: - ./packages/feedback-service:/app ports: - 8082:8080 depends_on: - mongo - redis user-group-service: build: ./packages/user-group-service command: npm start env_file: ./packages/user-group-service/.env environment: DB_PATH: mongo REDIS_SERVICE_HOST: redis volumes: - ./packages/user-group-service:/app ports: - 8083:8080 depends_on: - mongo - redis notifications-service: build: ./packages/notifications-service command: npm run dev env_file: ./packages/notifications-service/.env environment: MONGO_URL: mongodb://mongo:27017/notifications REDIS_HOST: redis REDIS_PORT: 6379 volumes: - type: bind source: ./packages/notifications-service target: /usr/src/app ports: - 8084:8080 depends_on: - mongo - redis search-service: build: ./packages/search-service command: npm run dev env_file: ./packages/search-service/.env environment: DB_PATH: mongo REDIS_SERVICE_HOST: redis volumes: - ./packages/search-service:/usr/src ports: - 8085:8080 depends_on: - mongo - redis lighthouse-service: build: ./packages/lighthouse-service command: npm start env_file: ./packages/lighthouse-service/.env environment: DB_PATH: mongo REDIS_SERVICE_HOST: redis volumes: - ./packages/lighthouse-service:/app ports: - 8086:8080 depends_on: - mongo - redis api-catalog-service: build: ./packages/api-catalog-service command: npm start env_file: ./packages/api-catalog-service/.env environment: DB_PATH: mongo REDIS_SERVICE_HOST: redis volumes: - ./packages/api-catalog-service:/app ports: - 8087:8080 depends_on: - mongo - redis analytics-service: build: ./packages/analytics-service command: npm start env_file: ./packages/analytics-service/.env environment: MONGO_URI: "mongodb://mongo/analytics" volumes: - ./packages/feedback-service:/app ports: - 8088:8080 depends_on: - mongo mongo: image: mongo:4 restart: always volumes: - ./tmp/db:/data/db ports: - 37017:27017 couchdb: image: couchdb:3 environment: COUCHDB_USER: couchdb # since this is a local development instance, it should be okay to keep the defaut values, # but the password can be changed from the couchdb fauxton ui. # Just make sure to update the password in the dependent service .env's COUCHDB_PASSWORD: test123 COUCHDB_SECRET: couchdbsecret123 volumes: - couch_data:/opt/couchdb/data - couch_config:/opt/couchdb/etc/local.d ports: - 5984:5984 redis: image: redis:alpine ports: - 6379:6379 restart: on-failure volumes: couch_data: couch_config: