Broker documentation is at https://qpid.apache.org/components/cpp-broker/index.html.
The Docker image entrypoint is copied from https://github.com/scholzj/docker-qpid-cpp. It performs configuration of the daemon according to environment variables, or runs some other command if not started with qpidd command.
You can get online line help using command
docker build -t qpid .
docker run --rm qpid --help
Qpid daemon has AMQP 0-10 heritage. AMQP 1.0 is not well documented.
There is some documentation in the source code at
qpid-cpp/docs/amqp-1.0.txt. The source is at
https://github.com/apache/qpid-cpp.
The AMQP 0-10 queues and exchanges can be persisted, but AMQP 1.0 object must be created every time the broker starts. The creation is done using AMQP messages.
The broker offers options --topic-patterns and --queue-patterns for defining policies at startup, but this does not allow defining any of the properties for the queues and topics created automatically. The pattern would seem to be a POSIX basic regular expression.
The Docker image can be configured using following environment variables.
QPIDD_HOMEdefines the broker home directory, where most files will be stored. By default/var/lib/qpiddQPIDD_DATA_DIRdefines broker's data-dir and pid-dir options. By default$QPIDD_HOME/workQPIDD_SASL_DBdefines the path to the SASL databases containing users and passwords. By default$QPIDD_HOME/etc/sasl/qpidd.sasldbQPIDD_SASL_CONFIG_DIRdefines the directory where the SASL configuration file will be stored. By default$QPIDD_HOME/etc/sasl/QPIDD_ADMIN_USERNAMEandQPIDD_ADMIN_PASSWORDallow to specify the username and password for the admin user which will be created. If not specified, no user will be created.QPIDD_SSL_DB_DIRdefines the directory where the NSS tools certificate database will be created. By default$QPIDD_HOME/etc/sslQPIDD_SSL_SERVER_PUBLIC_KEYandQPIDD_SSL_SERVER_PRIVATE_KEYspecify the public crt file and private pem key file contents of the broker certificate. (The keys should be stored in these variables as strings, not as a path to file). If specified, the broker will be configured with SSLQPIDD_SSL_TRUSTED_CAdefines the certificates which will be accepted as trusted CA certificatesQPIDD_SSL_TRUSTED_PEERdefines the certificates which will be accepted as trusted peers certificatesQPIDD_SSL_NO_DICTspecifies that the broker should not allow username/password based connections over SSL. It will allow only SSL client authentication.QPIDD_ACL_FILEdefines where the ACL file will be stored. By default$QPIDD_HOME/etc/qpidd.aclQPIDD_ACL_RULEScan be used to specify the exact ACL rules which will be used. If not specified the ACL file will be either left empty, or in caseQPIDD_ADMIN_USERNAMEwas specified it will allow everything for the admin user and forbid everything for everyone elseQPIDD_STORE_DIRdefines the broker message store directory. By default$QPIDD_HOME/storeQPIDD_PAGING_DIRdefines the broker paging directory. By default$QPIDD_HOME/pagingQPIDD_CONFIG_FILEdefines the path to the broker configuration file. By default$QPIDD_HOME/etc/qpidd.confQPIDD_CONFIG_OPTIONSmight contain the exact broker configuration directives which will be written into the configuration file. If not specified, the configuration file will be generated.