Pro budoucí googlery:
Můžete použít veřejný hostitel, jak je uvedeno výše, ale ke spuštění místního mosquitto broker, nejprve se ujistěte, že máte nainstalovaný mosquitto
kromě mosquitto_sub
. Poté můžete spustit mosquitto brokera jednoduchým spuštěním následujícího:
mosquitto
Stačí upravit konfigurační soubor Mosquitto ( /etc/mosquitto/conf.d/mosquitto.conf
) přidávám tyto řádky...
allow_anonymous true
listener 1883 0.0.0.0
... a restartujte Mosquitto (jako službu nebo ne).
$ sudo service mosquitto restart
nebo
$ mosquitto --verbose --config-file /etc/mosquitto/conf.d/mosquitto.conf
Jak je zde uvedeno, od verze 1.7 allow_anonymous
výchozí hodnota je false. Je také užitečné kontrolovat zprávy protokolu ( /var/log/mosquitto/mosquitto.log
).
Nakonec spusťte Mosquitto předplatitele/vydavatele pomocí --host
(-h
) parametr a IP adresu hostitele (získat if z ifconfig
nebo ip -color addr
příkaz).
Žádná z dalších odpovědí pro mě nefungovala. V mém případě jsem upgradoval z mosquitto 1.X na mosquitto 2.0, což vyžaduje přidání nové konfigurace do vašeho mosquitto.conf
:
listener 1883
Pro klienty jiné než localhost pro připojení (tj. přes Docker)
Výchozí kombinace hostitel:port pro mosquitto_pub/sub je localhost:1883. Pokud na svém místním počítači nemáte spuštěného brokera, pak se samozřejmě nebude moci připojit.
Řešením je buď spustit zprostředkovatele na vašem místním počítači, nebo říct utilitám, kam se mají připojit. Například:
mosquitto_sub -t newtopic/test -h test.mosquitto.org