Skip to content
Snippets Groups Projects
docker-compose.yml 4.61 KiB
Newer Older
root's avatar
root committed
volumes:   
  trustanchors:
  cabundle:
root's avatar
root committed

root's avatar
root committed
services:
root's avatar
root committed
  trust:
    image: indigoiam/trustanchors
    environment:
      - FORCE_TRUST_ANCHORS_UPDATE=1
    volumes:
      - trustanchors:/etc/grid-security/certificates
      - cabundle:/etc/pki

  fts-server:
    env_file:
      - .env
    image: gitlab-registry.cern.ch/fts/fts3:${FTS_SERVER_VERSION}
    hostname: ${FTS_HOSTNAME}
    environment:
      - FTS_HOSTNAME=${FTS_HOSTNAME}
      - FTS_SITE_NAME=${FTS_SITE_NAME}
      - FTS_IP=${FTS_IP}
      - FTS_MYSQL_HOST=${FTS_MYSQL_HOST}
      - FTS_DATABASE=${FTS_DATABASE}
      - FTS_DB_USER=${FTS_DB_USER}
      - FTS_DB_PASSWD=${FTS_DB_PASSWD}
      - FTS_DB_ROOT_PASSWD=${FTS_DB_ROOT_PASSWD}
root's avatar
root committed
    volumes:
      - cabundle:/etc/pki
      - trustanchors:/etc/grid-security/certificates
      - ./assets/certs:/certs
      - ./assets/log/fts3:/var/log/fts3
root's avatar
root committed
      - ./assets/vomsdir:/etc/grid-security/vomsdir
      - ./assets/vomses:/etc/vomses
      - ./assets/fts3:/etc/fts3
      - ./assets/scripts:/scripts
      - ./assets/supervisor/conf.d:/etc/supervisor/conf.d
#    Only used for CERN specific BDII publishing (uncomment if this is the case)
#    ports:
#      - 2170:2170   
root's avatar
root committed
    links:
      - ftsdb:ftsdb
    depends_on:
      - trust
      - ftsdb
    entrypoint:  
      - /scripts/startup-fts-server.sh

root's avatar
root committed
  fts-rest:
    env_file:
      - .env
    image: gitlab-registry.cern.ch/fts/fts-rest:${FTS_REST_VERSION}
    hostname: ${FTS_HOSTNAME}
    environment:
      - FTS_HOSTNAME=${FTS_HOSTNAME}
      - FTS_SITE_NAME=${FTS_SITE_NAME}
      - FTS_IP=${FTS_IP}
      - FTS_MYSQL_HOST=${FTS_MYSQL_HOST}
      - FTS_DATABASE=${FTS_DATABASE}
      - FTS_DB_USER=${FTS_DB_USER}
      - FTS_DB_PASSWD=${FTS_DB_PASSWD}
      - FTS_DB_ROOT_PASSWD=${FTS_DB_ROOT_PASSWD}
root's avatar
root committed
    volumes:
      - cabundle:/etc/pki
root's avatar
root committed
      - trustanchors:/etc/grid-security/certificates
      - ./assets/certs:/certs
      - ./assets/log/fts3:/var/log/fts3
root's avatar
root committed
      - ./assets/vomsdir:/etc/grid-security/vomsdir
      - ./assets/vomses:/etc/vomses
      - ./assets/fts3:/etc/fts3
      - ./assets/fts3-rest/httpd/conf.d:/etc/httpd/conf.d
root's avatar
root committed
      - ./assets/scripts:/scripts
      - ./assets/fts3-rest:/fts3-rest
root's avatar
root committed
    ports:
      - "8446:8446"
root's avatar
root committed
    links:
      - ftsdb:ftsdb
    depends_on:
      - trust
      - ftsdb
      - fts-server
    entrypoint:
      - /scripts/startup-fts-rest.sh

  fts-mon:
    env_file:
      - .env
    image: gitlab-registry.cern.ch/fts/fts-monitoring:${FTS_MONITORING_VERSION}
    hostname: ${FTS_HOSTNAME}
    environment:
      - FTS_HOSTNAME=${FTS_HOSTNAME}
      - FTS_SITE_NAME=${FTS_SITE_NAME}
      - FTS_IP=${FTS_IP}
      - FTS_MYSQL_HOST=${FTS_MYSQL_HOST}
      - FTS_DATABASE=${FTS_DATABASE}
      - FTS_DB_USER=${FTS_DB_USER}
      - FTS_DB_PASSWD=${FTS_DB_PASSWD}
      - FTS_DB_ROOT_PASSWD=${FTS_DB_ROOT_PASSWD}
root's avatar
root committed
    volumes:
      - cabundle:/etc/pki
root's avatar
root committed
      - trustanchors:/etc/grid-security/certificates
      - ./assets/certs:/certs
      - ./assets/log/fts3:/var/log/fts3
root's avatar
root committed
      - ./assets/vomsdir:/etc/grid-security/vomsdir
      - ./assets/vomses:/etc/vomses
      - ./assets/fts3:/etc/fts3
      - ./assets/fts3-mon/httpd/conf.d:/etc/httpd/conf.d
root's avatar
root committed
      - ./assets/scripts:/scripts
      - ./assets/fts3-mon:/fts3-mon
root's avatar
root committed
    ports:
root's avatar
root committed
      - "8449:8449"
    links:
      - ftsdb:ftsdb
    depends_on:
root's avatar
root committed
      - trust
root's avatar
root committed
      - ftsdb
root's avatar
root committed
      - fts-server
    entrypoint:
      - /scripts/startup-fts-mon.sh

  fts-cli:
    env_file:
      - .env
    image: marcelovilaca/fts3-cnaf:${FTS_CLI_VERSION}
    hostname: ${FTS_HOSTNAME}
    environment:
      - FTS_HOSTNAME=${FTS_HOSTNAME}
      - FTS_SITE_NAME=${FTS_SITE_NAME}
      - FTS_IP=${FTS_IP}
      - FTS_MYSQL_HOST=${FTS_MYSQL_HOST}
      - FTS_DATABASE=${FTS_DATABASE}
      - FTS_DB_USER=${FTS_DB_USER}
      - FTS_DB_PASSWD=${FTS_DB_PASSWD}
      - FTS_DB_ROOT_PASSWD=${FTS_DB_ROOT_PASSWD}
      - USER=${USER}
      - USER_UID=${USER_UID}
    volumes:
      - cabundle:/etc/pki
      - trustanchors:/etc/grid-security/certificates
      - ./assets/certs:/home/${USER}/.globus
      - ./assets/log/fts3:/var/log/fts3
      - ./assets/vomsdir:/etc/grid-security/vomsdir
      - ./assets/vomses:/etc/vomses
      - ./assets/fts3:/etc/fts3
      - ./assets/scripts:/scripts
    entrypoint: /tini -- sleep infinity

root's avatar
root committed
  ftsdb:
    env_file:
      - .env
    image: ${FTS_MYSQL_IMAGE}
root's avatar
root committed
    hostname: ftsdb
    environment:
      - MYSQL_HOST=${FTS_MYSQL_HOST}
      - MYSQL_USER=${FTS_DB_USER}
      - MYSQL_PASSWORD=${FTS_DB_PASSWD}
      - MYSQL_ROOT_PASSWORD=${FTS_DB_ROOT_PASSWD}
      - MYSQL_DATABASE=${FTS_DATABASE}
root's avatar
root committed
    ports:
      - "3306:3306"
root's avatar
root committed
    volumes:
      - ./assets/scripts:/scripts
      - db_data:/var/lib/mysql