Untuk calon Googler:
Anda dapat menggunakan host publik seperti yang disebutkan di atas, tetapi untuk memulai lokal mosquitto broker, pertama pastikan Anda telah menginstal mosquitto
selain mosquitto_sub
. Anda kemudian dapat memulai broker mosquitto hanya dengan menjalankan perintah berikut:
mosquitto
Cukup edit file konfigurasi Mosquitto ( /etc/mosquitto/conf.d/mosquitto.conf
) menambahkan baris-baris ini...
allow_anonymous true
listener 1883 0.0.0.0
... dan mulai ulang Mosquitto (sebagai layanan atau tidak).
$ sudo service mosquitto restart
atau
$ mosquitto --verbose --config-file /etc/mosquitto/conf.d/mosquitto.conf
Seperti yang diinformasikan di sini, sejak v.1.7 allow_anonymous
default ke false. Hal ini juga berguna untuk memeriksa pesan log ( /var/log/mosquitto/mosquitto.log
).
Terakhir, jalankan Mosquitto subscriber/publisher menggunakan --host
(-h
) dan alamat IP host (dapatkan jika dari ifconfig
atau ip -color addr
perintah).
Tidak ada jawaban lain yang berhasil untuk saya. Dalam kasus saya, saya telah memutakhirkan dari mosquitto 1.X ke mosquitto 2.0, yang memerlukan konfigurasi baru untuk ditambahkan ke mosquitto.conf
Anda :
listener 1883
Untuk klien selain localhost untuk terhubung (yaitu, melalui Docker)
Host default:kombinasi port untuk mosquitto_pub/sub adalah localhost:1883. Jika Anda tidak memiliki broker yang berjalan di komputer lokal Anda, tentu saja itu tidak akan dapat terhubung.
Solusinya adalah menjalankan broker di komputer lokal Anda, atau memberi tahu utilitas di mana harus terhubung. Misalnya:
mosquitto_sub -t newtopic/test -h test.mosquitto.org