18 ポイント 投稿者 GN⁺ 2026-03-23 | 1件のコメント | WhatsAppで共有
  • Flociは、アカウント登録や認証なしですぐに実行できる無料のオープンソース AWSローカルエミュレーターで、単一コマンドで起動する軽量構成
  • LocalStack Community Editionの2026年のサービス終了後に備えた制限のない代替であり、MITライセンスにより商用利用も可能
  • 起動時間24msメモリ13MiBイメージサイズ90MBと非常に軽量で、LocalStack比で100倍高速10倍少ないメモリ使用量を実現
  • 20以上のAWSサービスを完全サポートし、408件のSDKテストをすべて通過して高い互換性を確保
  • 既存のAWS SDKはエンドポイントを変更するだけでそのまま統合でき、ローカル開発・テスト環境ですぐに使える代替ソリューションを提供

Floci 概要

  • Floci無料のオープンソース ローカルAWSエミュレーターで、アカウント登録や認証トークンなしですぐに実行できる構成
  • docker compose up コマンドだけで起動でき、CI/CDの制限や機能ロックがない
  • 名前は雲の形である cirrocumulus floccus に由来し、「軽く、なめらかで、いつでも無料」を掲げている

LocalStack代替としての位置付け

  • LocalStack Community Editionは2026年3月にサービス終了予定で、その後は認証トークン必須・CIサポート終了・セキュリティアップデート停止が予定されている
  • Flociはそれに対する制限のない代替として提供される
  • MITライセンスで配布されており、商用利用を含め自由に活用できる

性能と機能の比較

  • 起動時間約24msアイドル時メモリ13MiBDockerイメージサイズ90MBと非常に軽量
  • LocalStack Community版と比べて約100倍高速な起動速度10倍以上少ないメモリ使用量
  • 20以上のAWSサービスをサポート408/408のSDKテストに合格
  • 主な対応サービス:
    • API Gateway v2 / HTTP API**,** Cognito**,** ElastiCache (Redis + IAM認証)

    • RDS (PostgreSQL, MySQL, IAM認証), S3 Object Lock (COMPLIANCE / GOVERNANCE)

      • DynamoDB StreamsIAMSTSKinesisKMS などを完全サポート
      • LocalStackでは上記機能は一部サポートまたは未対応の状態

クイックスタート

  • 基本的な docker-compose.yml 設定例を提供
    • ポート 4566 を使用し、ローカルの ./data ディレクトリをマウント
  • 実行コマンド:
    docker compose up
    
  • すべてのサービスは http://localhost:4566 でアクセス可能
  • AWS認証情報は任意の値を使用可能(AWS_ACCESS_KEY_ID=test, AWS_SECRET_ACCESS_KEY=test
  • 例示コマンド:
    • aws s3 mb s3://my-bucket
    • aws sqs create-queue --queue-name my-queue
    • aws dynamodb list-tables

SDK統合

  • 既存のAWS SDKはエンドポイントを変更するだけでそのまま利用可能
  • 主要言語ごとの例:
  • すべての例で regionus-east-1、認証情報は "test" を使用

イメージタグ

  • latest: ネイティブイメージ1秒未満の起動速度のため推奨
  • latest-jvm: JVMベースのイメージでプラットフォーム互換性を重視
  • x.y.z / x.y.z-jvm: バージョン固定リリース

環境設定

  • すべての設定は FLOCI_ 接頭辞の環境変数で上書き可能
  • 主な変数:
    • QUARKUS_HTTP_PORT: デフォルト 4566
    • FLOCI_DEFAULT_REGION: デフォルト us-east-1
    • FLOCI_DEFAULT_ACCOUNT_ID: デフォルト 000000000000
    • FLOCI_STORAGE_MODE: memory, persistent, hybrid, wal から選択(デフォルト hybrid
    • FLOCI_STORAGE_PERSISTENT_PATH: データディレクトリのパス(./data
  • 全設定ドキュメント: configuration docs
  • サービス別ストレージ設定: storage docs

ライセンス

  • MITライセンスで提供され、制限なく自由に使用および修正可能

1件のコメント

 
GN⁺ 2026-03-23
Hacker Newsの意見
  • AWS、GCP、Azureのようなクラウドプロバイダーが、ローカル開発向けエミュレーターを公式に提供してくれたらいいのにと思う
    現在、複数のAWS サーバーレススタックを使っているが、ローカル統合テストはほぼ不可能だ
    Localstackは悪くない代替手段だが、こうした機能はAWS自身が提供したほうが、開発者体験はずっと良くなるはずだ

    • 公式ローカルエミュレーターは一見よさそうだが、実際にはAWSが S3、IAM、Kinesis などの挙動差をいちいち説明しなければならなくなる
      人々はその違いをAWSのバグだと勘違いするだろうし、AWSにとってはサポートの悪夢になるはずだ
    • AWSエンジニアが作った local-web-services プロジェクトを見たが、かなり近い機能を提供している
      LocalstackがAIベースのshift-leftインフラツーリングのトレンドによって競争にさらされているのも興味深い
    • 昔、Microsoftは Azure Service Dev Kit (ASDK) という単一ノードのサンドボックスを提供していた
      今は縮小されたが、ローカルでAzureクラウド全体を模倣するというコンセプトだった
    • 私はこの意見にはまったく同意しない
      ソフトウェアは特定のクラウドAPIに依存しないよう、抽象化とインターフェース中心で設計すべきだ
    • Cloudflareは自社のサーバーレスプラットフォーム向けローカルエミュレーターを提供しており、かなりうまく動く
  • この種のツールは、私には無意味な試みに見える
    単体テスト用ならAWS呼び出しを mocking したほうがよく、
    ローカル開発用ならTerraformのようなIaCツールでテスト環境を実際にプロビジョニングするほうが安全だ
    エミュレーターの挙動が実サービスと異なる場合、バグが本番に流れ込む危険がある

    • しかも、ローカル環境ではうまく動かなかったコードが実際のAWSでは動くという逆転現象すら起こりうる
  • 「ローカルAWS」という概念についての自分の経験と思うところをまとめてみる

    • こういう製品が新規顧客獲得に大きく役立つとは思えない
      クレジットカード登録すら嫌がる人は、どうせ大口顧客にはならない
    • AWSの無料利用枠はかなり寛大だ。私も年間10ドルも使っていない
    • AWSを学ぶなら、コスト管理の現実を自分で体験すべきだ。初期に5ドル課金されるほうが、後で5000ドル失うよりましだ
    • ローカルクラウドの本当の利点は、セキュリティ負担なしに高速な反復開発ができることだ
      だが実際にデプロイする際にはこのセキュリティ負債を解消しなければならず、その過程で「自分のマシンでは動いていた」コードが壊れがちだ
    • LocalstackはAWSの非公式サポートを受けているため、機能が豊富でリリース速度も速い
      FOSSの代替がそのレベルに追いつくのは難しそうだ
    • 私がこういうツールを必要だと思う理由は、まさにIAM権限エミュレーションのためだ
      最小権限の原則を守ろうとすると、毎回権限を一つずつ開けていかなければならず、これが権限whack-a-moleゲームのようにもどかしい
      ローカルでIAMまで正確に再現できるなら、デプロイサイクルを大幅に短縮できる
      Localstackの有料版にはこの機能があるが、新しいプロジェクトがどれだけうまく実装しているのか気になる
    • CI/CD環境ではLocalstackはほぼ必須だ
      何百もの統合テストを高速で回す必要があるが、実際のAWS呼び出しは遅延、一貫性の問題、料金、rate limit などの面で非効率だ
      開発者ごとにAWSアカウントを配るのも管理の悪夢だ
      「AWSの料金爆弾を実際に食らってこそ学べる」という話は、まるで「火を学ぶには火傷しなければならない」と言うような非現実的なたとえ
    • ローカルエミュレーターの主な目的は単体テストおよび一部の統合テスト
      開発者ごとに別アカウントを与え、billing alert だけ設定しておけば、セキュリティ問題はそれほど大きくない
  • このプロジェクトが moto とどう違うのか気になる
    Localstackのライセンス変更への不満は多いが、すでに良い代替手段はある
    motoのサービスカバレッジ は印象的だ
    私たちのチームもほとんど移行しかけたが、Localstackのエンタープライズサポート契約のおかげでそのまま使い続けている

  • テスト用としてかなり有用そうだ
    私は Ansible role でLambdaパッケージングの自動化を作っているが、
    S3に既存のzipがあるか確認する部分を mocking できればずっと楽になりそうだ

  • LocalStackのコミュニティエディションは2026年3月に終了し、認証トークン必須化とセキュリティアップデート停止が予定されている
    Floci はこうした制約のない代替として紹介されている

    • 長年の末に閉じるのは残念だが、会社で使っているエンタープライズライセンスは本当に素晴らしかった
      CloudFormationのデプロイを待つ必要のない高速なフィードバックループを作れて、何千時間も節約できた
      インターネット接続なしでも列車の中でテストできた
  • このプロジェクト名はルーマニア語では「小さな毛玉」、俗語では陰毛を意味するので笑ってしまう

    • ラテン語では「羊毛の塊」という意味で、「価値のないもの」を意味する表現 flocci non facio にも使われる
  • これは私が待っていたプロジェクトだ
    Localstackは好きだが、コミュニティ主導のオープンなソリューションのほうがずっとふさわしいと思っていた
    AWSエンジニアが直接貢献できる構造なら、みんなに利益がある
    AI導入が加速している今、ローカル統合テストは必須だ

    • ただしAWSの立場からすれば、FOSSクローンを支援する理由はない
      その代わり、公式のローカルコンテナ版を提供するほうが現実的だ
    • 完全に同意する。特にエージェントワークフローが実際の状態を変更する今、
      ローカルテストこそが「モデルがテーブルを削除する幻覚」のような状況を安全に試せる唯一の方法だ
  • Localstackを使ったことがあるが、かなり良かった
    ところで、GCP向けにも似たようなものがあるか知っている人はいる?
    bigquery-emulator は役立ったが、
    GCP全体をエミュレートするものはまだ見つけられていない

  • 機能は良さそうに見えるが、コミット履歴がほとんどなく、PRやIssueもない
    自動生成されたプロジェクトのように見えて、信頼しづらいという印象がある
    実データでテストするときに安全なのか確信が持てない

    • 私も同意する。OSSプロジェクトなら、ある程度Issueが溜まっていたほうが貢献ポイントを見つけやすい
      まだ初期段階なので、今後を見守るつもりだ
    • もしかするとvibe-codedプロジェクトかもしれない
    • プロジェクトがまだ誕生して1週間しか経っていないのに、こういう疑いを向けるのは行き過ぎだ
      以前は、オープンソースなら誰かがセキュリティ問題を見つけてくれると信じていたが、
      今ではLLMでセキュリティ監査を回してみることもできる
      完璧ではないが、こうした自動監査によって悪意あるコードを隠しにくくなる