blob: 82bae44b0a3bad4a85a868c729e7accfaae106a7 [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# Full deployment (Core, Console, Enduser) on PostgreSQL, with high-availability set for Core
# http://syncope.apache.org/docs/reference-guide.html#high-availability
version: '3.3'
services:
db:
image: postgres:13
restart: always
environment:
POSTGRES_DB: syncope
POSTGRES_USER: syncope
POSTGRES_PASSWORD: syncope
syncope1:
depends_on:
- db
image: apache/syncope:${SYNCOPE_VERSION}
ports:
- "18080:8080"
restart: always
environment:
SPRING_PROFILES_ACTIVE: docker,postgresql
DB_URL: jdbc:postgresql://db:5432/syncope
DB_USER: syncope
DB_PASSWORD: syncope
DB_POOL_MAX: 10
DB_POOL_MIN: 2
OPENJPA_REMOTE_COMMIT: tcp(Addresses=syncope1;syncope2)
KEYMASTER_ADDRESS: http://localhost:8080/syncope/rest/keymaster
KEYMASTER_USERNAME: ${KEYMASTER_USERNAME}
KEYMASTER_PASSWORD: ${KEYMASTER_PASSWORD}
SERVICE_DISCOVERY_ADDRESS: http://syncope1:8080/syncope/rest/
ANONYMOUS_USER: ${ANONYMOUS_USER}
ANONYMOUS_KEY: ${ANONYMOUS_KEY}
syncope2:
depends_on:
- db
image: apache/syncope:${SYNCOPE_VERSION}
ports:
- "18081:8080"
restart: always
environment:
SPRING_PROFILES_ACTIVE: docker,postgresql
DB_URL: jdbc:postgresql://db:5432/syncope
DB_USER: syncope
DB_PASSWORD: syncope
DB_POOL_MAX: 10
DB_POOL_MIN: 2
OPENJPA_REMOTE_COMMIT: tcp(Addresses=syncope1;syncope2)
KEYMASTER_ADDRESS: http://localhost:8080/syncope/rest/keymaster
KEYMASTER_USERNAME: ${KEYMASTER_USERNAME}
KEYMASTER_PASSWORD: ${KEYMASTER_PASSWORD}
SERVICE_DISCOVERY_ADDRESS: http://syncope2:8080/syncope/rest/
ANONYMOUS_USER: ${ANONYMOUS_USER}
ANONYMOUS_KEY: ${ANONYMOUS_KEY}
syncope-console:
depends_on:
- syncope1
image: apache/syncope-console:${SYNCOPE_VERSION}
ports:
- "28080:8080"
restart: always
environment:
SPRING_PROFILES_ACTIVE: docker
KEYMASTER_ADDRESS: http://syncope1:8080/syncope/rest/keymaster
KEYMASTER_USERNAME: ${KEYMASTER_USERNAME}
KEYMASTER_PASSWORD: ${KEYMASTER_PASSWORD}
SERVICE_DISCOVERY_ADDRESS: http://syncope-console:8080/syncope-console/
ANONYMOUS_USER: ${ANONYMOUS_USER}
ANONYMOUS_KEY: ${ANONYMOUS_KEY}
syncope-enduser:
depends_on:
- syncope1
image: apache/syncope-enduser:${SYNCOPE_VERSION}
ports:
- "38080:8080"
restart: always
environment:
SPRING_PROFILES_ACTIVE: docker
KEYMASTER_ADDRESS: http://syncope1:8080/syncope/rest/keymaster
KEYMASTER_USERNAME: ${KEYMASTER_USERNAME}
KEYMASTER_PASSWORD: ${KEYMASTER_PASSWORD}
SERVICE_DISCOVERY_ADDRESS: http://syncope-enduser:8080/syncope-enduser/
ANONYMOUS_USER: ${ANONYMOUS_USER}
ANONYMOUS_KEY: ${ANONYMOUS_KEY}