# Copyright BMW CarIT GmbH, 2021. # Copyright Siemens AG, 2026. Part of the SW360 Portal Project. # # This program and the accompanying materials are made # available under the terms of the Eclipse Public License 2.0 # which is available at https://www.eclipse.org/legal/epl-2.0/ # # SPDX-License-Identifier: EPL-2.0 services: sw360: image: "${SW360_IMAGE:-ghcr.io/eclipse-sw360/sw360}:${SW360_VERSION:-latest}" restart: unless-stopped container_name: sw360 env_file: config/sw360/.env.backend secrets: - COUCHDB_SECRETS - SW360_SECRETS - JWT_KEYSTORE depends_on: - couchdb ports: - "8080:8080" - "11311:11311" stdin_open: true tty: true volumes: - etc:/etc/sw360 healthcheck: test: [ "CMD-SHELL", "curl -fsS http://localhost:8080/resource/api/health | grep -iq 'status\":\"up' || exit 1" ] interval: 30s timeout: 2s retries: 3 start_period: 60s couchdb-nouveau: image: couchdb:3.5-nouveau restart: unless-stopped container_name: couchdb_nouveau ports: - "5987:5987" - "5988:5988" couchdb: image: couchdb:3.5 restart: unless-stopped container_name: couchdb env_file: - ./config/couchdb/default_secrets # CouchDB does not support secrets ports: - "5984:5984" depends_on: - couchdb-nouveau volumes: - couchdb:/opt/couchdb/data - ./config/couchdb/sw360_setup.ini:/opt/couchdb/etc/local.d/sw360_setup.ini - ./config/couchdb/sw360_log.ini:/opt/couchdb/etc/local.d/sw360_log.ini - ./config/couchdb/nouveau.ini:/opt/couchdb/etc/local.d/nouveau.ini healthcheck: test: ["CMD-SHELL", "curl --fail -s http://couchdb:5984/_up"] interval: 30s timeout: 5s retries: 5 volumes: couchdb: null etc: null networks: default: name: sw360net driver: bridge secrets: SW360_SECRETS: file: ./config/sw360/default_secrets COUCHDB_SECRETS: file: ./config/couchdb/default_secrets JWT_KEYSTORE: file: ./rest/authorization-server/src/main/resources/jwt-keystore.jks