diff --git a/docker/supermq-docker/.env b/docker/supermq-docker/.env index 10e33f31f..9ae2b78d6 100644 --- a/docker/supermq-docker/.env +++ b/docker/supermq-docker/.env @@ -418,6 +418,12 @@ SMQ_MQTT_ADAPTER_ES_DB=0 SMQ_MQTT_ADAPTER_CACHE_NUM_COUNTERS=200000 SMQ_MQTT_ADAPTER_CACHE_MAX_COST=1048576 SMQ_MQTT_ADAPTER_CACHE_BUFFER_ITEMS=64 +SMQ_MQTT_ADAPTER_CERT_FILE= +SMQ_MQTT_ADAPTER_KEY_FILE= +SMQ_MQTT_ADAPTER_SERVER_CA_FILE= +SMQ_MQTT_ADAPTER_CLIENT_CA_FILE= +SMQ_MQTT_ADAPTER_CERT_VERIFICATION_METHODS= +SMQ_MQTT_ADAPTER_OCSP_RESPONDER_URL= ### CoAP ## If enabled run make all inside docker/ssl directory to generate the DTLS certs diff --git a/docker/supermq-docker/docker-compose.yaml b/docker/supermq-docker/docker-compose.yaml index 47c3c11d6..682b1a302 100644 --- a/docker/supermq-docker/docker-compose.yaml +++ b/docker/supermq-docker/docker-compose.yaml @@ -1234,6 +1234,12 @@ services: SMQ_MQTT_ADAPTER_CACHE_NUM_COUNTERS: ${SMQ_MQTT_ADAPTER_CACHE_NUM_COUNTERS} SMQ_MQTT_ADAPTER_CACHE_MAX_COST: ${SMQ_MQTT_ADAPTER_CACHE_MAX_COST} SMQ_MQTT_ADAPTER_CACHE_BUFFER_ITEMS: ${SMQ_MQTT_ADAPTER_CACHE_BUFFER_ITEMS} + SMQ_MQTT_ADAPTER_CERT_FILE: ${SMQ_MQTT_ADAPTER_CERT_FILE:+/mqtt-adapter.crt} + SMQ_MQTT_ADAPTER_KEY_FILE: ${SMQ_MQTT_ADAPTER_KEY_FILE:+/mqtt-adapter.key} + SMQ_MQTT_ADAPTER_SERVER_CA_FILE: ${SMQ_MQTT_ADAPTER_SERVER_CA_FILE:+/mqtt-adapter-server-ca.crt} + SMQ_MQTT_ADAPTER_CLIENT_CA_FILE: ${SMQ_MQTT_ADAPTER_CLIENT_CA_FILE:+/mqtt-adapter-client-ca.crt} + SMQ_MQTT_ADAPTER_CERT_VERIFICATION_METHODS: ${SMQ_MQTT_ADAPTER_CERT_VERIFICATION_METHODS} + SMQ_MQTT_ADAPTER_OCSP_RESPONDER_URL: ${SMQ_MQTT_ADAPTER_OCSP_RESPONDER_URL} SMQ_ES_URL: ${SMQ_ES_URL} SMQ_CLIENTS_GRPC_URL: ${SMQ_CLIENTS_GRPC_URL} SMQ_CLIENTS_GRPC_TIMEOUT: ${SMQ_CLIENTS_GRPC_TIMEOUT} @@ -1257,6 +1263,27 @@ services: networks: - supermq-base-net volumes: + # TLS certificate for MQTT + - type: bind + source: ${SMQ_MQTT_ADAPTER_CERT_FILE:-ssl/certs/dummy/server_cert} + target: /mqtt-adapter${SMQ_MQTT_ADAPTER_CERT_FILE:+.crt} + bind: + create_host_path: true + - type: bind + source: ${SMQ_MQTT_ADAPTER_KEY_FILE:-ssl/certs/dummy/server_key} + target: /mqtt-adapter${SMQ_MQTT_ADAPTER_KEY_FILE:+.key} + bind: + create_host_path: true + - type: bind + source: ${SMQ_MQTT_ADAPTER_SERVER_CA_FILE:-ssl/certs/dummy/server_ca} + target: /mqtt-adapter-server-ca${SMQ_MQTT_ADAPTER_SERVER_CA_FILE:+.crt} + bind: + create_host_path: true + - type: bind + source: ${SMQ_MQTT_ADAPTER_CLIENT_CA_FILE:-ssl/certs/dummy/client_ca} + target: /mqtt-adapter-client-ca${SMQ_MQTT_ADAPTER_CLIENT_CA_FILE:+.crt} + bind: + create_host_path: true # Clients gRPC mTLS client certificates - type: bind source: ${SMQ_CLIENTS_GRPC_CLIENT_CERT:-ssl/certs/dummy/client_cert}