example/docker-compose.yml
installation:
image: node:6
command: node /opt/index.js
working_dir: /opt
volumes:
- ./:/opt
- ../:/opt/micromono
environment:
- DEBUG=micromono*
- MICROMONO_LOG_LEVEL=debug
- NODE_ENV=development
- NPM_CONFIG_LOGLEVEL=warn
micromono:
extends: installation
volumes:
- ../:/opt/node_modules/micromono
#
# UDP discovery backend
#
balancer:
extends: micromono
command: node /opt/balancer/server.js
ports:
- "3000:3000"
links:
- account
- channel
- home
- io
# volumes:
# - ../../socketmq:/opt/balancer/public/jspm_packages/npm/socketmq@0.7.1
environment:
- MICROMONO_PORT=3000
- MICROMONO_SERVICES=account,channel,home,io
account:
extends: micromono
ports:
- "4545:4545"
command: node /opt/account/index.js --health-port 4545
channel:
extends: micromono
command: node /opt/channel/index.js
home:
extends: micromono
ports:
- "4646:4646"
command: node /opt/home/index.js --health-port 4646
io:
extends: micromono
command: node /opt/io/index.js
#
# nightwatch + selenium
#
balancer-istanbul:
extends: micromono
command: istanbul cover --config /opt/.istanbul.yml --dir /opt/balancer/coverage /opt/balancer/server.js
ports:
- "3000:3000"
links:
- account
- channel
- home
- io
environment:
- MICROMONO_SERVICES=account,channel,home,io
account-istanbul:
extends: micromono
command: istanbul cover --config /opt/.istanbul.yml --dir /opt/account/coverage /opt/account/index.js
channel-istanbul:
extends: micromono
command: istanbul cover --config /opt/.istanbul.yml --dir /opt/channel/coverage /opt/channel/index.js
home-istanbul:
extends: micromono
command: istanbul cover --config /opt/.istanbul.yml --dir /opt/home/coverage /opt/home/index.js
io-istanbul:
extends: micromono
command: istanbul cover --config /opt/.istanbul.yml --dir /opt/io/coverage /opt/io/index.js
hub:
image: selenium/hub:3
chrome:
image: selenium/node-chrome:3
links:
- hub
- balancer
chromedebug:
image: selenium/node-chrome-debug:3
links:
- hub
- balancer
ports:
- "5900:5900"
firefox:
image: selenium/node-firefox:3
links:
- hub
- balancer-istanbul
firefoxdebug:
image: selenium/node-firefox-debug:3
links:
- hub
- balancer
ports:
- 5901:5900
nightwatch:
image: blueimp/nightwatch:0.9
links:
- hub
volumes:
- ./test/e2e:/home/node
environment:
- APP_URL=http://balancer:3000
#
# NATS as service discovery backend
#
balancer-nats:
extends: micromono
command: node /opt/balancer/server.js --services account,channel,home,io
links:
- account-nats
- channel-nats
- home-nats
- io-nats
- nats:nats.dev
environment:
- MICROMONO_DISCOVERY_BACKEND=nats
- MICROMONO_DISCOVERY_NATS_SERVERS=nats://nats.dev:4222
nats:
image: nats:0.9.6
account-nats:
extends: account
links:
- nats:nats.dev
environment:
- MICROMONO_DISCOVERY_BACKEND=nats
- MICROMONO_DISCOVERY_NATS_SERVERS=nats://nats.dev:4222
home-nats:
extends: home
links:
- nats:nats.dev
environment:
- MICROMONO_DISCOVERY_BACKEND=nats
- MICROMONO_DISCOVERY_NATS_SERVERS=nats://nats.dev:4222
io-nats:
extends: io
links:
- nats:nats.dev
environment:
- MICROMONO_DISCOVERY_BACKEND=nats
- MICROMONO_DISCOVERY_NATS_SERVERS=nats://nats.dev:4222
channel-nats:
extends: channel
links:
- nats:nats.dev
environment:
- MICROMONO_DISCOVERY_BACKEND=nats
- MICROMONO_DISCOVERY_NATS_SERVERS=nats://nats.dev:4222