Episode pembuka seri LocalStack: skill fundamental yang wajib kalian kuasai, tools yang harus disiapkan, dan langkah verifikasi setup sebelum masuk ke materi emulasi cloud lokal.

Selamat datang di seri Belajar LocalStack! Dalam seri ini kita akan membangun workflow pengembangan cloud dari nol: mulai dari memahami mengapa emulasi cloud itu penting, hingga mengoperasikan S3, DynamoDB, Lambda, dan layanan AWS lain di mesin lokal — tanpa akun AWS sungguhan, tanpa biaya, dan tanpa risiko.
Namun sebelum menyentuh emulatornya, ada satu aturan yang tidak bisa ditawar: LocalStack berdiri di persimpangan banyak disiplin — Docker, konsep AWS, CLI, dan test automation. Kalau salah satu fondasinya goyah, materi berikutnya akan terasa seperti membangun rumah di atas pasir. Karena itu, episode 0 ini khusus menyiapkan seluruh fondasi: skill yang wajib dimiliki, tools yang perlu diinstall, spesifikasi hardware, dan langkah verifikasi agar semuanya siap ketika seri ini berlanjut.
LocalStack pada dasarnya adalah emulator API AWS yang berjalan di dalam container Docker. Maka skill di bawah ini bukan sekadar "sebaiknya", melainkan "wajib", karena akan dipakai di hampir semua episode.
LocalStack mendistribusikan emulatornya sebagai image container localstack/localstack. Kalian harus nyaman dengan istilah image (template yang bisa dijalankan), container (instance dari image), volume (penyimpanan persisten), dan network (cara container saling berkomunikasi). Yang tak kalah penting: docker-compose, yang akan kita pakai untuk mendefinisikan environment development secara reproducible.
Tip
Belum pernah Docker? Cukup kuasai siklus docker pull, docker run, docker ps, dan docker compose up untuk memulai. Seri ini akan memakai sekumpulan perintah yang sama berulang-ulang.
Walau berjalan lokal, LocalStack meniru perilaku AWS sungguhan. Beberapa konsep wajib dipahami:
us-east-1 sebagai default.access key dan secret key untuk autentikasi. Di LocalStack kita memakai kredensial palsu test/test.Ini perbedaan yang paling sering membingungkan pemula, dan akan menjadi materi utama episode 5 dan 6:
| Aspek | S3 | DynamoDB |
|---|---|---|
| Kategori | Object storage | Key-value / document database |
| Unit data | Object (file) dalam bucket | Item dalam tabel |
| Akses | Via key dan metadata, REST API | Via primary key, query, dan scan |
| Kasus pakai | File, media, backup, static asset | Data aplikasi dengan latensi rendah |
Ringkasnya: S3 untuk file, DynamoDB untuk data terstruktur yang perlu di-query. Keduanya akan kita praktikkan langsung di episode 5 dan 6.
Semua demo di seri ini memakai terminal. Minimal kalian harus nyaman menavigasi shell dan membaca output perintah. AWS CLI (aws) dan pembungkus lokalnya (awslocal) akan menjadi jembatan utama kalian ke LocalStack.
| No | Tool | Fungsi | Level |
|---|---|---|---|
| 1 | Docker Desktop / Docker Engine | Runtime untuk image LocalStack | Wajib |
| 2 | LocalStack CLI (localstack) | Mengontrol siklus hidup emulator | Wajib |
| 3 | AWS CLI + awslocal | Berinteraksi dengan service lokal | Wajib |
| 4 | Python 3 + pip | Menginstall LocalStack CLI | Wajib |
| 5 | VS Code | Menulis kode dan konfigurasi | Opsional |
Docker adalah runtime utama LocalStack. Di macOS dan Windows gunakan Docker Desktop; di Linux gunakan Docker Engine. Pastikan daemon berjalan sebelum localstack start. Verifikasi dengan:
docker info
docker ps
docker compose versionCara paling sederhana adalah menginstall CLI dari PyPI:
python3 -m pip install --upgrade localstack
localstack --versionVersi CLI mengikuti kalender, misalnya 2026.7.x untuk rilis Juli 2026. Alternatif tanpa pip: docker pull localstack/localstack:latest. Sejak v2026.03.0, LocalStack memakai kalender versioning dan satu image tunggal untuk Community dan Pro — cukup pilih tag stable, latest, dev, atau nightly.
Install AWS CLI versi 2, lalu tambahkan awslocal — pembungkus yang otomatis mengarahkan perintah ke endpoint http://localhost:4566 sehingga kalian tidak perlu mengetik --endpoint-url berulang kali:
python3 -m pip install awslocal
awslocal --versionHampir semua episode menulis kode dan konfigurasi. VS Code adalah pilihan paling umum: ada ekstensi resmi LocalStack, syntax highlighting YAML, dan dukungan Python/Node untuk materi Lambda nanti. Editor lain tetap boleh — yang penting kalian nyaman.
LocalStack jauh lebih hemat resource dibanding Kubernetes cluster lokal. Rekomendasinya:
| Komponen | Minimum | Recommended |
|---|---|---|
| RAM | 8 GB | 16 GB+ |
| Storage | 10 GB free | 20 GB+ |
| CPU | Dual-core | Quad-core + |
| Internet | Stabil (untuk pull image) | Stabil |
Sebelum lanjut ke episode berikutnya, pastikan semua tools terpasang tanpa error:
docker --version
docker compose version
docker run --rm hello-worldWarning
Kalau localstack --version gagal, cek apakah python3 dan pip menunjuk ke environment yang sama. Di sebagian OS, perintah pip dan Python utama berbeda — gunakan python3 -m pip secara eksplisit untuk menghindari ambiguitas.
Episode 0 adalah gerbang masuk seri ini. Berikut yang wajib kalian bawa:
awslocal.pip atau docker pull; pastikan hardware memenuhi minimum.Di episode 1 berikutnya kita masuk ke bagian yang paling penting secara konseptual: sejarah LocalStack — dari emulasi awal dengan moto, kelahiran LocalStack 2016, hingga mengapa ia kini menjadi standar pengembangan cloud lokal. Pastikan semua tools sudah terpasang, karena materi praktik segera dimulai!