Skip to content

Instantly share code, notes, and snippets.

@hjhsalo
Created October 9, 2017 13:20
Show Gist options
  • Save hjhsalo/bef20ddf5afb8b6908bbece299df9226 to your computer and use it in GitHub Desktop.
Save hjhsalo/bef20ddf5afb8b6908bbece299df9226 to your computer and use it in GitHub Desktop.
Sketch of a Docker Compose definition for development configuration REANA components
# -*- coding: utf-8 -*-
#
# This file is part of REANA.
# Copyright (C) 2017 CERN.
#
# REANA is free software; you can redistribute it and/or modify it under the
# terms of the GNU General Public License as published by the Free Software
# Foundation; either version 2 of the License, or (at your option) any later
# version.
#
# REANA is distributed in the hope that it will be useful, but WITHOUT ANY
# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
# A PARTICULAR PURPOSE. See the GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with REANA; if not, see <http://www.gnu.org/licenses>.
#
# In applying this license, CERN does not waive the privileges and immunities
# granted to it by virtue of its status as an Intergovernmental Organization or
# submit itself to any jurisdiction.
version: "3"
services:
workflow-controller:
# image: reanahub/reana-workflow-controller
build: [email protected]/reanahub/reana-workflow-controller.git
ports:
- "5000:5000"
volumes:
- ./cluster_data/reana:/reana # Path relative to docker-compose -file
- ./cluster_data/data:/data # Path relative to docker-compose -file
environment:
- SHARED_VOLUME_PATH: "/reana"
- ORGANIZATIONS: "default,alice,atlas,cms,lhcb"
networks:
- reana-network
job-controller:
# image: reanahub/reana-job-controller
build: [email protected]/reanahub/reana-job-controller.git
ports:
- "80:5000"
volumes:
- ./cluster_data/reana:/reana # Path relative to docker-compose -file
- ./cluster_data/data:/data # Path relative to docker-compose -file
links:
- "db"
environment:
- REANA_STORAGE_BACKEND: LOCAL
networks:
- reana-network
message-broker:
# image: reanahub/reana-message-broker
build: [email protected]/reanahub/reana-message-broker.git
ports:
- "5672:5672"
- "15672:15672"
volumes:
- ./cluster_data/reana:/reana # Path relative to docker-compose -file
- ./cluster_data/data:/data # Path relative to docker-compose -file
links:
- "db"
environment:
- API_HOST: api
networks:
- reana-network
server:
# image: reanahub/reana-server
build: [email protected]/reanahub/reana-server.git
ports:
- "80:5000"
volumes:
- ./cluster_data/reana:/reana # Path relative to docker-compose -file
- ./cluster_data/data:/data # Path relative to docker-compose -file
links:
- "api"
environment:
- API_HOST: api
- WORKFLOW_CONTROLLER_SERVICE_HOST: 0.0.0.0
- WORKFLOW_CONTROLLER_SERVICE_PORT_HTTP: 5000
networks:
- reana-network
workflow-monitor:
# image: reanahub/reana-workflow-monitor
build: [email protected]/reanahub/reana-workflow-monitor.git
command: ["sh", "-c", "cd server; python app.py"]
ports:
- "80:5000"
volumes:
- ./cluster_data/reana:/reana # Path relative to docker-compose -file
- ./cluster_data/data:/data # Path relative to docker-compose -file
links:
- "api"
environment:
- ZMQ_PROXY_CONNECT: tcp://zeromq-msg-proxy.default.svc.cluster.local:8667
networks:
- reana-network
zeromq-msg-proxy:
# image: reanahub/reana-workflow-monitor
build: [email protected]/reanahub/reana-workflow-monitor.git
command: ["sh", "-c", "cd tracker; python proxy.py"]
ports:
- "8666:8666"
- "8667:8667"
volumes:
- ./cluster_data/reana:/reana # Path relative to docker-compose -file
- ./cluster_data/data:/data # Path relative to docker-compose -file
links:
- "api"
environment:
- API_HOST: api
networks:
- reana-network
worker-yadage:
image: reanahub/reana-workflow-engine-yadage
build: [email protected]/reanahub/reana-workflow-engine-yadage.git
volumes:
- ./cluster_data/reana:/reana # Path relative to docker-compose -file
- ./cluster_data/data:/data # Path relative to docker-compose -file
links:
- "api"
environment:
- ZMQ_PROXY_CONNECT: tcp://zeromq-msg-proxy.default.svc.cluster.local:8666
- QUEUE_ENV: yadage-default-queue
- REANA_WORKFLOW_ENGINE_YADAGE_EXPERIMENT: default
- SHARED_VOLUME: /data
networks:
- reana-network
worker-cwl:
image: reanahub/reana-workflow-engine-cwl
build: [email protected]/reanahub/reana-workflow-engine-cwl.git
volumes:
- ./cluster_data/reana:/reana # Path relative to docker-compose -file
- ./cluster_data/data:/data # Path relative to docker-compose -file
links:
- "api"
environment:
- ZMQ_PROXY_CONNECT: tcp://zeromq-msg-proxy.default.svc.cluster.local:8666
- QUEUE_ENV: yadage-default-queue
- REANA_WORKFLOW_ENGINE_YADAGE_EXPERIMENT: default
- SHARED_VOLUME: /data
networks:
- reana-network
networks:
default:
name: reana-network
volumes:
persistent-data:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment