Skip to main content
22.03.2026

Floci: A Fast Local AWS Emulator

head-image

When teams need to validate infrastructure code, integration tests, or local service behavior, they usually want one thing: an AWS-like environment that starts quickly and stays out of the way. Floci targets exactly that use case. It is a local AWS emulator that runs with a simple docker compose up, works without real credentials, and keeps resource usage low enough for laptops and CI runners.

What is Floci?

Floci is an open-source local AWS emulator designed as a lightweight alternative for local development and automated testing. The project focuses on practical compatibility, fast startup time, and broad service coverage without auth gates or paid feature restrictions.

According to the project README, Floci supports more than 20 services and passes hundreds of SDK tests. It also exposes a single local endpoint, usually http://localhost:4566, so existing AWS SDKs and CLI workflows can be redirected with minimal changes.

Key Features

  • Fast startup: the native image starts in milliseconds instead of seconds.
  • Low footprint: small image size and low idle memory make it friendly for CI jobs.
  • Broad service coverage: supports services such as S3, SQS, DynamoDB, API Gateway v2, Cognito, STS, Kinesis, KMS, and more.
  • No real AWS account required: credentials can be dummy values for local use.
  • CI-friendly workflow: no external account setup, token management, or remote dependencies.

Installation

The quickest way to run Floci is with Docker Compose:

cat > docker-compose.yml <<'YAML'
services:
  floci:
    image: hectorvent/floci:latest
    ports:
      - "4566:4566"
    volumes:
      - ./data:/app/data
YAML

docker compose up -d

Then point your AWS CLI or SDK to the local endpoint:

export AWS_ENDPOINT_URL=http://localhost:4566
export AWS_DEFAULT_REGION=us-east-1
export AWS_ACCESS_KEY_ID=test
export AWS_SECRET_ACCESS_KEY=test

Usage

Once Floci is running, standard AWS CLI commands work against the local endpoint:

aws --endpoint-url "$AWS_ENDPOINT_URL" s3 mb s3://demo-bucket
aws --endpoint-url "$AWS_ENDPOINT_URL" sqs create-queue --queue-name demo-queue
aws --endpoint-url "$AWS_ENDPOINT_URL" dynamodb list-tables

That makes Floci useful for several common SRE and platform engineering workflows:

  • validating Terraform or bootstrap scripts in a disposable environment
  • testing app integrations before touching shared staging accounts
  • running CI suites that depend on core AWS APIs
  • reproducing cloud-related bugs locally with faster feedback loops

Operational Tips

For reliable automation, pin a specific Floci image tag instead of always using latest. If your test suite depends on state across restarts, mount a persistent data directory and review the available storage modes. In CI, keep the emulator close to the test runner so startup and API latency stay predictable.

If you maintain internal platform tooling, Floci can also serve as a fast local target for smoke tests and developer onboarding. New engineers can exercise AWS-dependent code paths without waiting for cloud account provisioning.

Conclusion

Floci is a strong option for teams that want a simple local AWS emulator with fast startup, low memory usage, and solid service coverage. For DevOps and SRE work, that translates into quicker tests, cheaper CI runs, and less friction during local development.

Akmatori helps teams automate incident response and operate production systems with less manual toil. Explore more at akmatori.com and check out the latest open-source work from Akmatori on GitHub.

Automate incident response and prevent on-call burnout with AI-driven agents!