
나 보다 설명 더 잘하는 분들이 구글에 많으니 토스~~~
npm i --save mqtt
우분투에서 설치하였기 때문에 우분투 기준임!
mosquitto 브로커 공식 홈페이지에 우분투에 설치하는 방법이 자세히 나와있다...
sudo apt-add-repository ppa:mosquitto-dev/mosquitto-ppa
sudo apt-get update
위 두 코드를 터미널에 하나씩 입력하여 설치한다.
sudo systemctl status mosquitto
위 명령어를 통해 mosquitto가 실행 중인지 아닌지를 확인한다.

위 이미지와 같이 active (running)이라는 글자가 보여야 실행중이라는 의미이다.
만약 실행중이 아니라면,
sudo systemctl start mosquitto
위 명령어를 입력해 서비스를 시작할 수 있다.
터미널이 2개 필요하다.
mosquitto_sub -h localhost -t test/topic
-h localhost: 브로커 호스트 (여기서는 로컬에서 테스트하므로 localhost 사용)
-t test/topic: 구독할 토픽 이름 (맘대로 정하면 됨)
mosquitto_pub -h localhost -t test/topic -m "니 주제에 mqtt를?"
-h localhost: 브로커 호스트
-t test/topic: 메시지를 보낼 토픽 이름 (아까 터미널1에 쓴거랑 똑같이 하셈)
-m "니 주제에 mqtt를?": 전송할 메시지 (아무거나 보내 보셈)
Connection refused 오류라는 메시지를 받았을 경우
브로커가 실행되지 않거나, 연결을 허용하지 않는 설정이 되어있을 가능성이 높다.
서비스가 실행중인지 확인하고
sudo systemctl status mosquitto
active 상태가 아니라면 재실행 한다.
sudo systemctl start mosquitto
sudo nano /etc/mosquitto/mosquitto.conf
이렇게 했을 때 나오는 메시지들에
listener 1883
allow_anonymous true
위 내용이 있는지 확인하고, 없으면 알맞게 변경해 주어야한다.
1883은 기본 포트이기 때문에 본인 포트에 알맞게 알아서 변경하셈 !
내용 수정했으면 Ctrl + O, Enter, Ctrl + X로 저장하고 종료 ㄱㄱ
sudo systemctl restart mosquitto
그러고 mosquitto 재시작 하면 됨 ㅇㅇ
솔직한 출처 : GPT 슨배림과 함께하였습니다.
