Skip to main content

#полоумныйдом mosquitto http file serving

Для пошлых целей обслуживания OTA-прошивки (на базе NodeMCU/Lua) ранее был приспособлен целый Apache2.4, который обслуживал десяток файлов-скриптов. Грубо, подумал я, читая порцию коммитов в dev-ветке брокера mosquitto 😉

Оказалось, что при использовании Websocket + mosquitto есть возможность поднять простенький http-сервер, который умеет обслуживать обычные GET-запросы. Всё пересобрал, статическая линковка, избавился от apache.

ilyxa@snooky-int:/develop/build/SmartHome/etc$ cat mosquitto.conf
user mqttlistener 1883
protocol mqtt
listener 9000
protocol websockets
http_dir /develop/build/SmartHome/web
bind_address 127.0.0.1
log_type all
log_dest file /develop/build/SmartHome/var/log/mqtt.log

Футпринт по памяти просто смешной. Всё легче лёгкого 🙂 Короче, с apache попрощался.

ilyxa@snooky-int:/develop/build/SmartHome/etc$ ps -L -o pid,time,lname,rss,nlwp -fp <code>pgrep mosquitto</code>
PID TIME LNAME RSS NLWP
5623 00:01 - 6216 1
ilyxa@snooky-int:/develop/build/SmartHome/etc$

Прикрутил простенькую Web-морду , чтобы по мелочам не дергать инстанцию RapidSCADA. Работает, да и ладно.