version: '3' services: frontend: #build: ./frontend image: ghcr.io/frikky/shuffle-frontend:0.8.92 container_name: shuffle-frontend hostname: shuffle-frontend ports: - "${FRONTEND_PORT}:80" - "${FRONTEND_PORT_HTTPS}:443" networks: - shuffle environment: - BACKEND_HOSTNAME=${BACKEND_HOSTNAME} restart: unless-stopped depends_on: - backend backend: #build: ./backend image: ghcr.io/frikky/shuffle-backend:0.8.92 container_name: shuffle-backend hostname: ${BACKEND_HOSTNAME} # Here for debugging: ports: - "${BACKEND_PORT}:5001" networks: - shuffle volumes: - /var/run/docker.sock:/var/run/docker.sock - ${SHUFFLE_APP_HOTLOAD_LOCATION}:/shuffle-apps - ${SHUFFLE_FILE_LOCATION}:/shuffle-files environment: - DATASTORE_EMULATOR_HOST=shuffle-database:8000 - SHUFFLE_OPENSEARCH_URL=http://shuffle-opensearch:9200 - SHUFFLE_APP_HOTLOAD_FOLDER=/shuffle-apps - SHUFFLE_FILE_LOCATION=/shuffle-files - ORG_ID=${ORG_ID} - SHUFFLE_APP_DOWNLOAD_LOCATION=${SHUFFLE_APP_DOWNLOAD_LOCATION} - SHUFFLE_DOWNLOAD_AUTH_BRANCH=${SHUFFLE_DOWNLOAD_AUTH_BRANCH} - SHUFFLE_DEFAULT_USERNAME=${SHUFFLE_DEFAULT_USERNAME} - SHUFFLE_DEFAULT_PASSWORD=${SHUFFLE_DEFAULT_PASSWORD} - SHUFFLE_DEFAULT_APIKEY=${SHUFFLE_DEFAULT_APIKEY} - SHUFFLE_APP_FORCE_UPDATE=${SHUFFLE_APP_FORCE_UPDATE} - HTTP_PROXY=${SHUFFLE_HTTP_PROXY} - HTTPS_PROXY=${SHUFFLE_HTTPS_PROXY} restart: unless-stopped depends_on: - opensearch #- database orborus: #build: ./functions/onprem/orborus image: ghcr.io/frikky/shuffle-orborus:0.8.91 container_name: shuffle-orborus hostname: shuffle-orborus networks: - shuffle volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - SHUFFLE_APP_SDK_VERSION=0.8.90 - SHUFFLE_WORKER_VERSION=0.8.90 - ORG_ID=${ORG_ID} - ENVIRONMENT_NAME=${ENVIRONMENT_NAME} - BASE_URL=http://${OUTER_HOSTNAME}:${BACKEND_PORT} - DOCKER_API_VERSION=1.40 - SHUFFLE_BASE_IMAGE_NAME=${SHUFFLE_BASE_IMAGE_NAME} - SHUFFLE_BASE_IMAGE_REGISTRY=${SHUFFLE_BASE_IMAGE_REGISTRY} - SHUFFLE_BASE_IMAGE_TAG_SUFFIX=${SHUFFLE_BASE_IMAGE_TAG_SUFFIX} - HTTP_PROXY=${SHUFFLE_HTTP_PROXY} - HTTPS_PROXY=${SHUFFLE_HTTPS_PROXY} - SHUFFLE_PASS_WORKER_PROXY=${SHUFFLE_PASS_WORKER_PROXY} - SHUFFLE_PASS_APP_PROXY=${SHUFFLE_PASS_APP_PROXY} - SHUFFLE_ORBORUS_EXECUTION_TIMEOUT=600 - SHUFFLE_ORBORUS_EXECUTION_CONCURRENCY=50 - CLEANUP=${SHUFFLE_CONTAINER_AUTO_CLEANUP} restart: unless-stopped opensearch: image: opensearchproject/opensearch:latest hostname: shuffle-opensearch container_name: shuffle-opensearch environment: - cluster.name=shuffle-cluster - node.name=shuffle-opensearch - discovery.seed_hosts=shuffle-opensearch - cluster.initial_master_nodes=shuffle-opensearch - bootstrap.memory_lock=true - "OPENSEARCH_JAVA_OPTS=-Xms2048m -Xmx2048m" # minimum and maximum Java heap size, recommend setting both to 50% of system RAM - cluster.routing.allocation.disk.threshold_enabled=false - opendistro_security.disabled=true ulimits: memlock: soft: -1 hard: -1 nofile: soft: 65536 # maximum number of open files for the OpenSearch user, set to at least 65536 on modern systems hard: 65536 volumes: - ${DB_LOCATION}:/usr/share/opensearch/data:rw ports: - 9200:9200 networks: - shuffle #database: # #build: ./backend/database # image: frikky/shuffle:database # container_name: shuffle-database # hostname: shuffle-database # ports: # - "8000:8000" # networks: # - shuffle # environment: # - _JAVA_OPTIONS="-Xmx2g" # restart: unless-stopped # volumes: # - ${DB_LOCATION}:/etc/shuffle networks: shuffle: driver: bridge