Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.
Forked from kotahi / Kotahi
4225 commits behind the upstream repository.
docker-compose.production.yml 1.73 KiB
version: '3'

services:
  server:
    build:
      context: .
      dockerfile: ./Dockerfile-production
      target: server
      args:
        - node_env=${NODE_ENV:-production}
        - server_protocol=${SERVER_PROTOCOL}
        - server_host=${SERVER_HOST}
        - server_port=${SERVER_PORT}
        - client_protocol=${CLIENT_PROTOCOL}
        - client_host=${CLIENT_HOST}
        - client_port=${CLIENT_PORT}
        - instance_name=${INSTANCE_NAME:-elife}
    ports:
      - ${SERVER_PORT:-3000}:${SERVER_PORT:-3000}
    environment:
      - NODE_ENV=${NODE_ENV:-production}
      - POSTGRES_HOST=${POSTGRES_HOST}
      - POSTGRES_PORT=${POSTGRES_PORT}
      - POSTGRES_DB=${POSTGRES_DB}
      - POSTGRES_USER=${POSTGRES_USER}
      - POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
      - PUBSWEET_SECRET=${PUBSWEET_SECRET}
      - CLIENT_PROTOCOL=${CLIENT_PROTOCOL}
      - CLIENT_HOST=${CLIENT_HOST}
      - CLIENT_PORT=${CLIENT_PORT}
      - PUBLIC_CLIENT_HOST=${PUBLIC_CLIENT_HOST:-0.0.0.0}
      - SERVER_PROTOCOL=${SERVER_PROTOCOL}
      - SERVER_HOST=${SERVER_HOST}
      - SERVER_PORT=${SERVER_PORT}
      - ORCID_CLIENT_ID=${ORCID_CLIENT_ID}
      - ORCID_CLIENT_SECRET=${ORCID_CLIENT_SECRET}
      - USE_SANDBOXED_ORCID=${USE_SANDBOXED_ORCID:-false}
      - INSTANCE_NAME=${INSTANCE_NAME:-elife}

  job-xsweet:
    image: pubsweet/job-xsweet:1.5.0
    depends_on:
      - server
    command:
      [
        'bash',
        './scripts/wait-for-it.sh',
        'server:${SERVER_PORT}',
        --,
        'node',
        'src/xsweet.js',
      ]
    environment:
      - DATABASE_URL=postgres://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
    volumes:
      - ./scripts/wait-for-it.sh:/home/node/scripts/wait-for-it.sh