Kembali ke Katalog Modul
MODUL 32 DEEP DIVE

Deployment Docker Compose untuk IoT Server Stack

MODUL 32 (SPESIALIS IOT): DOCKER COMPOSE IOT STACK DEPLOYMENT


📌 META MODUL & PRASYARAT

  • Bidang Spesialisasi: Multi-Container Orchestration & Automated Infrastructure Deployment.
  • Target Pembaca: Pembelajar yang sudah menguasai Docker Container (Modul 31).
  • Learning Outcome:
  • Memahami fungsi Docker Compose (docker-compose.yml) untuk mendefinisikan dan menjalankan Multi-Container IoT Stack.
  • Mampu membuat konfigurasi otomatis satu kali klik untuk Mosquitto + Node-RED + InfluxDB + Grafana + MySQL.
  • Memahami pengaturan jaringan Bridge Network internal antar container.
  • Mampu melakukan backup dan restore seluruh stack IoT server.
  • Estimasi Waktu Belajar: 120 Menit.
  • Tingkat Kesulitan: 🟡 Menengah - Lanjut (Level 32 / 40).
  • Prasyarat: Modul 31 (Containerization dengan Docker untuk IoT Stack).

⚡ CHEAT SHEET COMPLETE docker-compose.yml IOT STACK

version: '3.8'

services:
# 1. Mosquitto MQTT Broker
mosquitto:
image: eclipse-mosquitto:latest
container_name: deeptech_mosquitto
restart: always
ports:
  • "1883:1883"
  • "9001:9001"
volumes:
  • ./mosquitto/config:/mosquitto/config
  • ./mosquitto/data:/mosquitto/data

# 2. Node-RED Automation & Dashboard
nodered:
image: nodered/node-red:latest
container_name: deeptech_nodered
restart: always
ports:
  • "1880:1880"
volumes:
  • ./nodered_data:/data
depends_on:
  • mosquitto

# 3. MySQL Database
mysql_db:
image: mysql:8.0
container_name: deeptech_mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: root_password_123
MYSQL_DATABASE: esp_deeptech
ports:
  • "3306:3306"
volumes:
  • ./mysql_data:/var/lib/mysql

Perintah Eksekusi 1-Klik:
docker-compose up -d



Latihan & Quiz Evaluasi Modul

Progres Quiz: 0 / 2 Soal
SOAL #1
File konfigurasi berbasis YAML manakah yang digunakan untuk mengorkestrasi dan menyalakan banyak container IoT sekaligus (Mosquitto, Node-RED, MySQL) dalam 1 baris perintah?
SOAL #2
Perintah terminal manakah yang digunakan untuk menghentikan dan menghapus seluruh container yang didefinisikan pada file `docker-compose.yml`?

Kunci Jawaban & Pembahasan

Kunci Jawaban: 1. b. docker-compose.yml, 2. b. docker-compose down.


Apakah Anda siap lanjut ke Modul 33: Cloud IoT Platforms (AWS IoT Core, ThingsBoard, Blynk, Adafruit IO)?