Files
supermq/docker/addons/certs/docker-compose.yml
T
Dušan Borovčanin 658003080e NOISSUE - Update Docker and Compose versions (#2159)
Signed-off-by: Dusan Borovcanin <borovcanindusan1@gmail.com>
2024-04-10 12:02:36 +02:00

91 lines
3.7 KiB
YAML

# Copyright (c) Abstract Machines
# SPDX-License-Identifier: Apache-2.0
# This docker-compose file contains optional certs services. Since it's optional, this file is
# dependent of docker-compose file from <project_root>/docker. In order to run this services, execute command:
# docker compose -f docker/docker-compose.yml -f docker/addons/certs/docker-compose.yml up
# from project root.
networks:
magistrala-base-net:
volumes:
magistrala-certs-db-volume:
services:
certs-db:
image: postgres:16.2-alpine
container_name: magistrala-certs-db
restart: on-failure
environment:
POSTGRES_USER: ${MG_CERTS_DB_USER}
POSTGRES_PASSWORD: ${MG_CERTS_DB_PASS}
POSTGRES_DB: ${MG_CERTS_DB_NAME}
networks:
- magistrala-base-net
volumes:
- magistrala-certs-db-volume:/var/lib/postgresql/data
certs:
image: magistrala/certs:${MG_RELEASE_TAG}
container_name: magistrala-certs
depends_on:
- certs-db
restart: on-failure
networks:
- magistrala-base-net
ports:
- ${MG_CERTS_HTTP_PORT}:${MG_CERTS_HTTP_PORT}
environment:
MG_CERTS_LOG_LEVEL: ${MG_CERTS_LOG_LEVEL}
MG_CERTS_SIGN_CA_PATH: ${MG_CERTS_SIGN_CA_PATH}
MG_CERTS_SIGN_CA_KEY_PATH: ${MG_CERTS_SIGN_CA_KEY_PATH}
MG_CERTS_VAULT_HOST: ${MG_CERTS_VAULT_HOST}
MG_CERTS_VAULT_NAMESPACE: ${MG_CERTS_VAULT_NAMESPACE}
MG_CERTS_VAULT_APPROLE_ROLEID: ${MG_CERTS_VAULT_APPROLE_ROLEID}
MG_CERTS_VAULT_APPROLE_SECRET: ${MG_CERTS_VAULT_APPROLE_SECRET}
MG_CERTS_VAULT_THINGS_CERTS_PKI_PATH: ${MG_CERTS_VAULT_THINGS_CERTS_PKI_PATH}
MG_CERTS_VAULT_THINGS_CERTS_PKI_ROLE_NAME: ${MG_CERTS_VAULT_THINGS_CERTS_PKI_ROLE_NAME}
MG_CERTS_HTTP_HOST: ${MG_CERTS_HTTP_HOST}
MG_CERTS_HTTP_PORT: ${MG_CERTS_HTTP_PORT}
MG_CERTS_HTTP_SERVER_CERT: ${MG_CERTS_HTTP_SERVER_CERT}
MG_CERTS_HTTP_SERVER_KEY: ${MG_CERTS_HTTP_SERVER_KEY}
MG_CERTS_DB_HOST: ${MG_CERTS_DB_HOST}
MG_CERTS_DB_PORT: ${MG_CERTS_DB_PORT}
MG_CERTS_DB_PASS: ${MG_CERTS_DB_PASS}
MG_CERTS_DB_USER: ${MG_CERTS_DB_USER}
MG_CERTS_DB_NAME: ${MG_CERTS_DB_NAME}
MG_CERTS_DB_SSL_MODE: ${MG_CERTS_DB_SSL_MODE}
MG_CERTS_DB_SSL_CERT: ${MG_CERTS_DB_SSL_CERT}
MG_CERTS_DB_SSL_KEY: ${MG_CERTS_DB_SSL_KEY}
MG_CERTS_DB_SSL_ROOT_CERT: ${MG_CERTS_DB_SSL_ROOT_CERT}
MG_AUTH_GRPC_URL: ${MG_AUTH_GRPC_URL}
MG_AUTH_GRPC_TIMEOUT: ${MG_AUTH_GRPC_TIMEOUT}
MG_AUTH_GRPC_CLIENT_CERT: ${MG_AUTH_GRPC_CLIENT_CERT:+/auth-grpc-client.crt}
MG_AUTH_GRPC_CLIENT_KEY: ${MG_AUTH_GRPC_CLIENT_KEY:+/auth-grpc-client.key}
MG_AUTH_GRPC_SERVER_CA_CERTS: ${MG_AUTH_GRPC_SERVER_CA_CERTS:+/auth-grpc-server-ca.crt}
MG_THINGS_URL: ${MG_THINGS_URL}
MG_JAEGER_URL: ${MG_JAEGER_URL}
MG_JAEGER_TRACE_RATIO: ${MG_JAEGER_TRACE_RATIO}
MG_SEND_TELEMETRY: ${MG_SEND_TELEMETRY}
MG_CERTS_INSTANCE_ID: ${MG_CERTS_INSTANCE_ID}
volumes:
- ../../ssl/certs/ca.key:/etc/ssl/certs/ca.key
- ../../ssl/certs/ca.crt:/etc/ssl/certs/ca.crt
- type: bind
source: ${MG_ADDONS_CERTS_PATH_PREFIX}${MG_AUTH_GRPC_CLIENT_CERT:-./ssl/certs/dummy/client_cert}
target: /auth-grpc-client${MG_AUTH_GRPC_CLIENT_CERT:+.crt}
bind:
create_host_path: true
- type: bind
source: ${MG_ADDONS_CERTS_PATH_PREFIX}${MG_AUTH_GRPC_CLIENT_KEY:-./ssl/certs/dummy/client_key}
target: /auth-grpc-client${MG_AUTH_GRPC_CLIENT_KEY:+.key}
bind:
create_host_path: true
- type: bind
source: ${MG_ADDONS_CERTS_PATH_PREFIX}${MG_AUTH_GRPC_SERVER_CA_CERTS:-./ssl/certs/dummy/server_ca}
target: /auth-grpc-server-ca${MG_AUTH_GRPC_SERVER_CA_CERTS:+.crt}
bind:
create_host_path: true