# What is Eclipse Mosquitto? Eclipse Mosquitto is an open source implementation of a server for versions 5, 3.1.1, and 3.1 of the MQTT protocol. Main homepages: http://mosquitto.org/ %%LOGO%% # How to use this image ## Directories Three directories have been created in the image to be used for configuration, persistent storage and logs. /mosquitto/config /mosquitto/data /mosquitto/log ## Configuration When running the image, the default configuration values are used. To use a custom configuration file, mount a **local** configuration file to `/mosquitto/config/mosquitto.conf` ```console $ docker run -it -p 1883:1883 -p 9001:9001 -v mosquitto.conf:/mosquitto/config/mosquitto.conf %%IMAGE%% ``` Configuration can be changed to: - persist data to `/mosquitto/data` - log to `/mosquitto/log/mosquitto.log` i.e. add the following to `mosquitto.conf`: persistence true persistence_location /mosquitto/data/ log_dest file /mosquitto/log/mosquitto.log **Note**: If a volume is used, the data will persist between containers. ## Run Run a container using the new image: ```console $ docker run -it -p 1883:1883 -p 9001:9001 -v mosquitto.conf:/mosquitto/config/mosquitto.conf -v /mosquitto/data -v /mosquitto/log %%IMAGE%% ``` **Note**: if the mosquitto configuration (mosquitto.conf) was modified to use non-default ports, the docker run command will need to be updated to expose the ports that have been configured.