MMMSG in Docker¶
Due to popular demand we decided to provide Docker images for MMMSG. However, you should consider installing MMMSG using Debian packages.
Provided image is still experimental.
This guide expects you to be familiar with Docker and Docker compose.
To use images referenced in this document you need to log in to our docker registry:
docker login -u customer -p Aen1ieB5sh docker.acrobits.net
Create a directory
mmmsg and inside it create a file called
docker-compose.yml with the following content:
--- version: "2" networks: mmmsgnet: services: mmmsgmongo: image: mongo:3.6 volumes: - /mmmsgdata/mongo:/data/db networks: mmmsgnet: aliases: - mongo logging: driver: "json-file" options: max-size: 20m mmmsg: depends_on: - mmmsgmongo image: docker.acrobits.net/releases/mmmsg volumes: - /mmmsgdata/files:/files - /mmmsgdata/conf:/etc/acrobits/mmmsg environment: - MMMSG_DOMAIN=mmmsg.example.com restart: on-failure networks: mmmsgnet: aliases: - mmmsg logging: driver: "json-file" options: max-size: 20m mmmsgstunnel: depends_on: - mmmsg image: docker.acrobits.net/releases/mmmsgstunnel volumes: - /mmmsgdata/certs:/certs ports: - 443:443 networks: mmmsgnet: aliases: - mmmsgstunnel logging: driver: "json-file" options: max-size: 20m
mmmsg.example.com with the hostname where the mmmsg server will be available. Then run
docker-compose up -d
This will start up MMMSG server with Mongo and with stunnel as TLS proxy. It will also create a directory
/mmmsgdata which will contain several configuration and data directories.
If you start MMMSG server as described above, a new directory
/mmmsgdata will be created and populated with several files which you can replace. Before editing or replacing those files, stop the containers if they are running.
The files in
/mmmsgdata/certs are TLS key and certificates for TLS. If none are present, a key and a self-signed certificate is generated. You should replace them with your own certificates.
/mmmsgdata/conf/mmmsg.xml is a MMMSG configuration file. If the file does not exist, it is generated from a template using
MMMSG_DOMAIN variable that is set in
docker-compose.yml file above. If the file already exists, it is not modified and the variable is ignored.
Make sure that base url in the configuration file is set correctly. If your MMMSG server does not work as expected, this is the first item to look at.
Files sent over MMSG service are stored in
/mmmsgdata/files and their metadata is stored in mongo database in