Docker를 이용해 MQTT Broker를 간단하게 설치할 수 있다.
*자세한 설명 생략
① docker-compose.yml 생성
*docker-compose.yml 설명 아래 관련 글 참고
version: "3.7"
services:
mqtt:
container_name: mqtt-broker
image: eclipse-mosquitto
volumes:
- mosquitto_conf:/mosquitto/config
- mosquitto_data:/mosquitto/data
- mosquitto_log:/mosquitto/log
networks:
- mqttnet
ports:
- 1883:1883
volumes:
mosquitto_conf:
mosquitto_data:
mosquitto_log:
networks:
mqttnet:
driver: bridge
② cmd 창을 열고 docker-compose.yml 이 위치한 곳으로 이동
③ docker-compose up -d
- Image 다운로드 후 Container 시작
*재가동 필요시 : docker start mqtt-broker
*docker ps로 상태 확인
④ docker exec -it mqtt-broker /bin/sh
- 실행된 mqtt-broker의 로그를 확인하면 "local only mode."로 docker Container 내부에서 만 통신이 가능
따라서 외부에서도 통신이 가능하게 설정이 필요
*mqtt-broker 로그 확인 : docker logs -f mqtt-broker
⑤ docker exec -it mqtt-broker /bin/sh
- mqtt-broker 로 진입
⑥ vi /mosquitto/config/mosquitto.conf
- Broker(mosquitto) 설정 파일 (mosquitto.conf)을 vi를 통해 Open
- 아래 두 줄 추가(위치 상관없음)
*vi에서 i를 누르면 편집모드
allow_anonymous true
listener 1883 0.0.0.0
- 추가 후 저장 종료(esc 〉 :wq)
⑦ docker restart mqtt-broker
- mqtt-broker Container 재시작
*mqtt-broker 명령 창에 exit를 입력하여 Container에서 빠져나옴
- 이때 재시작이 안되고 Container가 계속 종료된다면 설정 시 문제 발생
- docker-compose down 후 ③부터 다시 진행
*docker-compose.yml에 volume을 잡아뒀기 때문에 해당 volume도 삭제 후 진행해야 됨
▷ 참고
▷ 관련 글
'▶ Back-End > Server' 카테고리의 다른 글
Docker Cluster(Swarm 모드)구성 방법 (0) | 2023.09.18 |
---|---|
Linux Docker 설치 방법 (0) | 2023.09.15 |
Visual Studio Code 설치 방법 (0) | 2022.11.10 |
IntelliJ(Community) SpringBoot Project 생성 (0) | 2022.11.08 |
IntelliJ(Community) 설치 방법 + Eclipse 단축키 설정 (0) | 2022.11.08 |
댓글