commit
ba25c250c4
2 changed files with 44 additions and 0 deletions
BIN
public/svgs/mosquitto.png
Normal file
BIN
public/svgs/mosquitto.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 16 KiB |
44
templates/compose/mosquitto.yaml
Normal file
44
templates/compose/mosquitto.yaml
Normal file
|
|
@ -0,0 +1,44 @@
|
||||||
|
# Documentation: https://mosquitto.org/documentation/
|
||||||
|
# Slogan: Mosquitto is lightweight and suitable for use on all devices, from low-power single-board computers to full servers.
|
||||||
|
# Tags: mosquitto, mqtt, open-source
|
||||||
|
# Logo: svgs/mosquitto.png
|
||||||
|
# Port: 1883
|
||||||
|
|
||||||
|
services:
|
||||||
|
mosquitto:
|
||||||
|
image: eclipse-mosquitto
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
- SERVICE_FQDN_MOSQUITTO
|
||||||
|
- MQTT_USERNAME=${MQTT_USERNAME}
|
||||||
|
- MQTT_PASSWORD=${MQTT_PASSWORD}
|
||||||
|
- REQUIRE_CERTIFICATE=${REQUIRE_CERTIFICATE:-false}
|
||||||
|
- ALLOW_ANONYMOUS=${ALLOW_ANONYMOUS:-true}
|
||||||
|
volumes:
|
||||||
|
- "./mosquitto/config:/mosquitto/config"
|
||||||
|
- "./certs:/certs"
|
||||||
|
entrypoint: 'sh -c "
|
||||||
|
if [ ''$REQUIRE_CERTIFICATE'' = ''true'' ]; then
|
||||||
|
echo ''listener 8883'' > /mosquitto/config/mosquitto.conf &&
|
||||||
|
echo ''cafile /certs/ca.crt'' >> /mosquitto/config/mosquitto.conf &&
|
||||||
|
echo ''certfile /certs/server.crt'' >> /mosquitto/config/mosquitto.conf &&
|
||||||
|
echo ''keyfile /certs/server.key'' >> /mosquitto/config/mosquitto.conf;
|
||||||
|
else
|
||||||
|
echo ''listener 1883'' > /mosquitto/config/mosquitto.conf;
|
||||||
|
fi &&
|
||||||
|
echo ''require_certificate ''$REQUIRE_CERTIFICATE >> /mosquitto/config/mosquitto.conf &&
|
||||||
|
echo ''allow_anonymous ''$ALLOW_ANONYMOUS >> /mosquitto/config/mosquitto.conf &&
|
||||||
|
if [ -n ''$MQTT_USERNAME''] && [ -n ''$MQTT_USERNAME'' ]; then
|
||||||
|
echo ''password_file /mosquitto/config/passwords'' >> /mosquitto/config/mosquitto.conf &&
|
||||||
|
touch /mosquitto/config/passwords &&
|
||||||
|
chmod 0700 /mosquitto/config/passwords &&
|
||||||
|
chown root:root /mosquitto/config/passwords &&
|
||||||
|
mosquitto_passwd -b -c /mosquitto/config/passwords $MQTT_USERNAME $MQTT_PASSWORD &&
|
||||||
|
chown mosquitto:mosquitto /mosquitto/config/passwords;
|
||||||
|
fi &&
|
||||||
|
exec mosquitto -c /mosquitto/config/mosquitto.conf
|
||||||
|
"'
|
||||||
|
labels:
|
||||||
|
- traefik.enable=true
|
||||||
|
- traefik.tcp.routers.mqtt.entrypoints=mqtt
|
||||||
|
- traefik.tcp.routers.mqtts.entrypoints=mqtts
|
||||||
Loading…
Reference in a new issue