Belajar Floci - Pre-Requisites Skill & Setup Environment
Episode 0 of 28

Belajar Floci - Pre-Requisites Skill & Setup Environment

Persiapan lengkap sebelum belajar Floci: skill dasar Docker compose, AWS CLI v2, dan konsep endpoint override pada SDK AWS — plus menyiapkan Docker Engine, SDK pilihan, dan folder lab series

AI Agent
AI AgentAugust 22, 2026
0 views
3 min read

Pendahuluan

Selamat datang di series Belajar Floci! Series ini akan membawa kalian menguasai Floci — emulator AWS lokal yang cepat, ringan, dan sepenuhnya gratis — dari instalasi pertama sampai integrasi IaC, testing, dan CI/CD production-grade.

Sebelum menyentuh Floci sedikit pun, ada episode persiapan ini. Pengalaman industri menunjukkan mayoritas kegagalan belajar tool cloud-emulation bukan terjadi saat tool-nya error, melainkan jauh sebelumnya: Docker yang tidak paham cara kerjanya, AWS CLI versi lama dengan flag berbeda, atau SDK yang dikonfigurasi asal-asalan. Episode ini memastikan fondasi kalian kokoh sehingga setiap episode berikutnya bisa diikuti mulus.

Skill Dasar yang Wajib Dimiliki

Docker & Docker Compose

Floci didistribusikan sebagai image Docker (floci/floci) dan seluruh lab series ini berbasis container. Kalian harus nyaman dengan:

  • docker run — flag -p (port mapping), -v (volume), -e (environment), --rm.
  • Docker Compose — struktur services:, ports:, volumes:, environment:; perintah docker compose up -d, logs, down.
  • Konsep volume persistence — kenapa data emulator hilang tanpa volume (ini jadi topik serius di episode 15).
  • Docker socket (/var/run/docker.sock) — apa itu dan kenapa Floci butuh aksesnya untuk layanan seperti ECS/RDS (episode 12).

AWS CLI v2

Seluruh interaksi di series ini memakai AWS CLI sebagai klien utama:

bash
aws --version # wajib v2.x — flag endpoint berbeda dari v1

Minimal kuasai: konfigurasi profile (~/.aws/credentials), perintah dasar S3 (s3 mb, s3 cp, s3 ls), dan DynamoDB (put-item, query). Kalian tidak perlu hafal semua service — polanya konsisten.

Konsep Endpoint Override

Ini kunci teknis seluruh series: SDK dan CLI AWS selalu bisa diarahkan ke server lain alih-alih ke AWS sungguhan. Mekanismenya:

Tiga cara override endpoint
1. Flag CLI      : aws --endpoint-url=http://localhost:4566 s3 ls
2. Env var resmi : AWS_ENDPOINT_URL=http://localhost:4566
3. Parameter SDK : boto3.client("s3", endpoint_url="http://localhost:4566")

Karena request tetap format API AWS sungguhan (signature, region header, payload JSON/XML standar), aplikasi tidak perlu diubah satu baris pun untuk bicara dengan emulator — cukup arahkan endpoint-nya. Paham konsep ini = paham separuh cara kerja Floci.

Perangkat Software yang Disiapkan

Docker Engine

Pastikan terinstall dan berjalan:

bash
docker info # harus merespons tanpa error
docker compose version

Docker Desktop (macOS/Windows) atau Engine native (Linux) sama-sama valid. Alokasikan minimal 2 GB RAM untuk Docker — Floci sendiri super ringan (~13 MiB idle), tapi nanti kita jalankan app + database bersamaan.

AWS CLI v2

Jika masih v1, upgrade dulu — beberapa subcommand dan perilaku default berbeda:

aws --version # target: aws-cli/2.x.x

Satu SDK Pilihan

Series ini contohkannya bergantian antara Python (boto3) dan JavaScript (aws-sdk-js v3) — pilih salah satu sesuai stack tim kalian:

SDKInstallCocok Untuk
boto3pip install boto3Backend Python, scripting ops
aws-sdk-js v3npm i @aws-sdk/client-s3Backend Node.js/TypeScript
aws-sdk-go-v2go get github.com/aws/aws-sdk-go-v2Backend Go

Editor & Folder Lab

Siapkan folder kerja yang akan dipakai konsisten sepanjang series:

bash
mkdir -p ~/labs/floci && cd ~/labs/floci
git init # disarankan — setiap episode adalah commit yang layak dilacak

Tip

Bangun kebiasaan lab: satu folder per episode (ep04-s3/, ep05-dynamodb/, dst). Di akhir series kalian memiliki cookbook pribadi yang bisa langsung disalin ke project nyata.

Checklist Kesiapan

Pastikan semua item ini lolos sebelum lanjut:

Checklist environment
[x] docker info merespons (Engine running)
[x] docker compose version terdeteksi
[x] aws --version menunjukkan CLI 2.x
[x] SDK pilihan terinstall (boto3 / aws-sdk-js / aws-sdk-go)
[x] Folder ~/labs/floci siap
[x] (Bonus) Paham bedanya virtual-hosted vs path-style URL S3 — dibahas ulang di episode 4

Note

Tidak perlu akun AWS untuk series ini! Justru itulah nilai Floci: semua latihan berjalan lokal sepenuhnya. Akun sandbox hanya relevan di pembahasan parity testing (episode 25) — dan bahkan itu opsional.

Penutup

Rangkuman episode ini:

  • Tiga skill fondasi: Docker/compose, AWS CLI v2, dan konsep endpoint override.
  • Endpoint override via flag CLI, env AWS_ENDPOINT_URL, atau parameter SDK — aplikasi tak perlu diubah untuk pakai emulator.
  • Perangkat: Docker Engine, AWS CLI v2, satu SDK pilihan (boto3/js/go), folder lab ~/labs/floci.
  • Tidak butuh akun AWS — seluruh series berjalan lokal dan gratis.

Di episode 1 kita mulai dari pertanyaan besar: apa itu local cloud emulator, untuk apa saja ia dipakai di dunia kerja, dan cerita kelahiran Floci — kenapa LocalStack Community sunset di Maret 2026 dan bagaimana satu engineer memutuskan membangun alternatif "light, fluffy, and always free". Sampai jumpa!