Files
dc-observatio/deploy/local-bundle/docker-compose.yml
T
2026-07-07 22:17:44 +03:00

206 lines
6.1 KiB
YAML

name: ${COMPOSE_PROJECT_NAME:-pcp-local}
x-pcp-service-env: &pcp-service-env
CONFIG_SERVER_URI: http://spring-cloud-config-server:8888
CONFIG_SERVER_FAIL_FAST: "true"
SPRING_PROFILES_ACTIVE: local,docker-local
SPRING_CLOUD_CONFIG_PROFILE: local,docker-local
SPRING_CLOUD_CONFIG_LABEL: ""
SPRING_KAFKA_ADMIN_AUTO_CREATE: "true"
SPRING_KAFKA_LISTENER_AUTO_STARTUP: "true"
PCP_POSTGRES_HOST: ${PCP_POSTGRES_HOST:-postgres}
PCP_POSTGRES_PORT: ${PCP_POSTGRES_PORT:-5432}
PCP_KAFKA_HOST: ${PCP_KAFKA_HOST:-kafka}
PCP_KAFKA_PORT: ${PCP_KAFKA_PORT:-9092}
CAMUNDA_CLIENT_ENABLED: ${CAMUNDA_CLIENT_ENABLED:-false}
CAMUNDA_GRPC_ADDRESS: ${CAMUNDA_GRPC_ADDRESS:-http://host.docker.internal:26500}
x-pcp-service-common: &pcp-service-common
restart: unless-stopped
extra_hosts:
- "host.docker.internal:host-gateway"
depends_on:
spring-cloud-config-server:
condition: service_started
services:
postgres:
image: ${POSTGRES_IMAGE:-postgis/postgis:16-3.4}
restart: unless-stopped
environment:
POSTGRES_USER: ${POSTGRES_USER:-postgres}
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-password}
POSTGRES_DB: postgres
ports:
- "${POSTGRES_PORT:-5432}:5432"
volumes:
- postgres-data:/var/lib/postgresql/data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER:-postgres} -d postgres"]
interval: 5s
timeout: 5s
retries: 30
kafka:
image: ${KAFKA_IMAGE:-apache/kafka:3.7.2}
restart: unless-stopped
environment:
KAFKA_NODE_ID: "1"
KAFKA_PROCESS_ROLES: broker,controller
KAFKA_CONTROLLER_QUORUM_VOTERS: 1@kafka:9093
KAFKA_LISTENERS: PLAINTEXT://:9092,CONTROLLER://:9093,EXTERNAL://:29092
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,EXTERNAL://localhost:${KAFKA_PORT:-29092}
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,CONTROLLER:PLAINTEXT,EXTERNAL:PLAINTEXT
KAFKA_CONTROLLER_LISTENER_NAMES: CONTROLLER
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
KAFKA_AUTO_CREATE_TOPICS_ENABLE: "true"
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: "1"
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: "1"
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: "1"
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: "0"
KAFKA_LOG_DIRS: /var/lib/kafka/data
ports:
- "${KAFKA_PORT:-29092}:29092"
volumes:
- kafka-data:/var/lib/kafka/data
healthcheck:
test: ["CMD-SHELL", "/opt/kafka/bin/kafka-topics.sh --bootstrap-server kafka:9092 --list >/dev/null 2>&1"]
interval: 10s
timeout: 10s
retries: 30
spring-cloud-config-server:
image: pcp/spring-cloud-config-server:${PCP_IMAGE_TAG:-local}
restart: unless-stopped
extra_hosts:
- "host.docker.internal:host-gateway"
environment:
SPRING_PROFILES_ACTIVE: local
CONFIG_NATIVE_SEARCH_LOCATIONS: file:/config-repo
SERVER_PORT: 8888
ports:
- "${CONFIG_SERVER_PORT:-38888}:8888"
volumes:
- ${CONFIG_REPO_DIR:-./config-repo}:/config-repo:ro
pcp-srpring-boot-admin-server:
<<: *pcp-service-common
image: pcp/pcp-srpring-boot-admin-server:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_ADMIN_PORT:-7000}:7000"
pcp-complex-mission-service:
<<: *pcp-service-common
image: pcp/pcp-complex-mission-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_COMPLEX_MISSION_PORT:-7002}:7002"
pcp-ballistics-service:
<<: *pcp-service-common
image: pcp/pcp-ballistics-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_BALLISTICS_PORT:-7003}:7003"
pcp-request-service:
<<: *pcp-service-common
image: pcp/pcp-request-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_REQUEST_PORT:-7005}:7005"
pcp-route-processing-service:
<<: *pcp-service-common
image: pcp/pcp-route-processing-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_ROUTE_PROCESSING_PORT:-7004}:7004"
slots-service:
<<: *pcp-service-common
image: pcp/slots-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_SLOTS_PORT:-7006}:7006"
pcp-ui-service:
<<: *pcp-service-common
image: pcp/pcp-ui-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_UI_PORT:-7008}:7008"
pcp-stations-service:
<<: *pcp-service-common
image: pcp/pcp-stations-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_STATIONS_PORT:-7009}:7009"
pcp-mission-planing-service:
<<: *pcp-service-common
image: pcp/pcp-mission-planing-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_MISSION_PORT:-7010}:7010"
pcp-tgu-service:
<<: *pcp-service-common
image: pcp/pcp-tgu-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_TGU_PORT:-7011}:7011"
pcp-coverage-scheme-service:
<<: *pcp-service-common
image: pcp/pcp-coverage-scheme-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_COVERAGE_SCHEME_PORT:-7012}:7012"
pcp-satellite-catalog-service:
<<: *pcp-service-common
image: pcp/pcp-satellite-catalog-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_SATELLITE_CATALOG_PORT:-7013}:7013"
pcp-dynamic-plan-service:
<<: *pcp-service-common
image: pcp/pcp-dynamic-plan-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_DYNAMIC_PLAN_PORT:-7014}:7014"
pcp-gateway-service:
<<: *pcp-service-common
image: pcp/pcp-gateway-service:${PCP_IMAGE_TAG:-local}
environment:
<<: *pcp-service-env
ports:
- "${PCP_GATEWAY_PORT:-7080}:7080"
volumes:
postgres-data:
kafka-data:
networks:
default:
name: ${PCP_DOCKER_NETWORK:-pcp-local_default}
external: ${PCP_DOCKER_NETWORK_EXTERNAL:-false}