diff --git a/Dockerfile b/Dockerfile index fa06558..98c16ba 100644 --- a/Dockerfile +++ b/Dockerfile @@ -19,6 +19,8 @@ COPY entrypoint.sh /usr/local/bin/ega-entrypoint.sh RUN chmod +x /usr/local/bin/ega-entrypoint.sh +USER 100:101 + ENTRYPOINT ["/usr/local/bin/ega-entrypoint.sh"] CMD ["rabbitmq-server"] diff --git a/README.md b/README.md index 5203506..39fe678 100644 --- a/README.md +++ b/README.md @@ -8,6 +8,8 @@ The following environment variables can be used to configure the broker: | Variable | Description | |---------:|:------------| +| `MQ_VHOST` | Default vhost other than `/` | +| `MQ_VERIFY` | Set to `verify_none` to disable verification of client certificate | | `MQ_USER` | Default user (with admin rights) | | `MQ_PASSWORD_HASH` | Password hash for the above user | | `CEGA_CONNECTION` | DSN URL for the shovels and federated queues with CentralEGA | @@ -28,6 +30,7 @@ services: - "5672:5672" - "15672:15672" environment: + - MQ_VHOST=vhost - MQ_USER=admin - MQ_PASSWORD_HASH=4tHURqDiZzypw0NTvoHhpn8/MMgONWonWxgRZ4NXgR8nZRBz - CEGA_CONNECTION diff --git a/entrypoint.sh b/entrypoint.sh index 90b08b1..094a1f8 100644 --- a/entrypoint.sh +++ b/entrypoint.sh @@ -10,15 +10,15 @@ listeners.ssl.default = 5671 ssl_options.cacertfile = ${MQ_CA:-/etc/rabbitmq/ssl/ca.pem} ssl_options.certfile = ${MQ_SERVER_CERT:-/etc/rabbitmq/ssl/mq-server.pem} ssl_options.keyfile = ${MQ_SERVER_KEY:-/etc/rabbitmq/ssl/mq-server-key.pem} -ssl_options.verify = verify_peer +ssl_options.verify = ${MQ_VERIFY:-verify_peer} ssl_options.fail_if_no_peer_cert = true ssl_options.versions.1 = tlsv1.2 disk_free_limit.absolute = 1GB management.listener.port = 15672 management.load_definitions = /etc/rabbitmq/definitions.json +default_vhost = ${MQ_VHOST:-/} EOF -chown rabbitmq:rabbitmq /etc/rabbitmq/rabbitmq.conf chmod 600 /etc/rabbitmq/rabbitmq.conf cat > /etc/rabbitmq/definitions.json < /etc/rabbitmq/definitions.json < /etc/rabbitmq/advanced.config < /etc/rabbitmq/advanced.config <