version: '3.1' # Description: Default compose file, with host port for musicbrainz volumes: mqdata: driver: local pgdata: driver: local solrdata: driver: local dbdump: driver: local searchdump: driver: local services: db: build: context: build/postgres args: - POSTGRES_VERSION=${POSTGRES_VERSION:-12} image: musicbrainz-docker_db:${POSTGRES_VERSION:-12} logging: driver: "json-file" options: max-size: "10m" max-file: "10" restart: unless-stopped command: postgres -c "shared_buffers=2048MB" -c "shared_preload_libraries=pg_amqp.so" env_file: - ./default/postgres.env shm_size: "2GB" volumes: - pgdata:/var/lib/postgresql/data expose: - "5432" musicbrainz: build: context: build/musicbrainz args: - POSTGRES_VERSION=${POSTGRES_VERSION:-12} logging: driver: "json-file" options: max-size: "50m" max-file: "50" ports: - "${MUSICBRAINZ_DOCKER_HOST_IPADDRCOL:-}${MUSICBRAINZ_WEB_SERVER_PORT:-5000}:5000" volumes: - dbdump:/media/dbdump - searchdump:/media/searchdump restart: unless-stopped env_file: - ./default/postgres.env environment: - MUSICBRAINZ_BASE_FTP_URL=${MUSICBRAINZ_BASE_FTP_URL:-} - MUSICBRAINZ_BASE_DOWNLOAD_URL=${MUSICBRAINZ_BASE_DOWNLOAD_URL:-https://data.metabrainz.org/pub/musicbrainz} - MUSICBRAINZ_SERVER_PROCESSES=${MUSICBRAINZ_SERVER_PROCESSES:-10} - MUSICBRAINZ_USE_PROXY=1 - MUSICBRAINZ_WEB_SERVER_HOST=${MUSICBRAINZ_WEB_SERVER_HOST:-localhost} - MUSICBRAINZ_WEB_SERVER_PORT=${MUSICBRAINZ_WEB_SERVER_PORT:-5000} depends_on: - db - mq - search - redis indexer: build: build/sir env_file: - ./default/postgres.env logging: driver: "json-file" options: max-size: "10m" max-file: "10" volumes: - ${SIR_CONFIG_PATH:-./default/indexer.ini}:/code/config.ini depends_on: - db - mq - search search: build: context: build/solr args: - MB_SOLR_VERSION=${MB_SOLR_VERSION:-3.4.2} image: musicbrainz-docker_search:${MB_SOLR_VERSION:-3.4.2} logging: driver: "json-file" options: max-size: "10m" max-file: "10" restart: unless-stopped environment: - SOLR_HEAP=2g - LOG4J_FORMAT_MSG_NO_LOOKUPS=true expose: - "8983" volumes: - solrdata:/opt/solr/server/solr/data - searchdump:/media/searchdump mq: build: build/rabbitmq hostname: "mq" logging: driver: "json-file" options: max-size: "10m" max-file: "10" restart: unless-stopped ulimits: nofile: 65536 volumes: - mqdata:/var/lib/rabbitmq expose: - "5672" redis: image: redis:3-alpine logging: driver: "json-file" options: max-size: "10m" max-file: "10" restart: unless-stopped expose: - "6379"