18 điểm bởi GN⁺ 2026-03-23 | 1 bình luận | Chia sẻ qua WhatsApp
  • Flocitrình giả lập AWS cục bộ mã nguồn mở miễn phí có thể chạy ngay mà không cần đăng ký tài khoản hay xác thực, với kiến trúc nhẹ khởi động bằng một lệnh duy nhất
  • giải pháp thay thế không giới hạn để chuẩn bị cho thời điểm LocalStack Community Edition ngừng dịch vụ vào năm 2026, đồng thời cho phép sử dụng thương mại nhờ giấy phép MIT
  • Rất nhẹ với thời gian khởi động 24ms, bộ nhớ 13MiB, kích thước image 90MB, cho thấy tốc độ nhanh gấp 100 lầnmức dùng bộ nhớ ít hơn 10 lần so với LocalStack
  • Hỗ trợ đầy đủ hơn 20 dịch vụ AWS và đạt 408 bài kiểm tra SDK đều vượt qua, đảm bảo mức độ tương thích cao
  • Có thể tích hợp ngay chỉ bằng cách thay đổi endpoint của AWS SDK hiện có, cung cấp giải pháp thay thế dùng được ngay trong môi trường phát triển và kiểm thử cục bộ

Tổng quan về Floci

  • Flocitrình giả lập AWS cục bộ mã nguồn mở miễn phí, có thể chạy ngay mà không cần đăng ký tài khoản hay token xác thực
  • Chạy chỉ với lệnh docker compose up, không có giới hạn CI/CD hay khóa tính năng
  • Tên gọi bắt nguồn từ cirrocumulus floccus, một dạng mây, với định hướng “nhẹ, mượt và luôn miễn phí”

Vị thế như một giải pháp thay thế LocalStack

  • LocalStack Community Edition dự kiến ngừng dịch vụ vào tháng 3 năm 2026, sau đó sẽ yêu cầu token xác thực, ngừng hỗ trợ CI và dừng cập nhật bảo mật
  • Floci được cung cấp như một giải pháp thay thế không giới hạn cho tình huống này
  • Được phát hành theo giấy phép MIT, cho phép sử dụng linh hoạt bao gồm cả mục đích thương mại

So sánh hiệu năng và tính năng

  • Rất nhẹ với thời gian khởi động khoảng 24ms, bộ nhớ nhàn rỗi 13MiB, kích thước Docker image 90MB
  • So với phiên bản cộng đồng của LocalStack, tốc độ khởi động nhanh hơn khoảng 100 lầnmức dùng bộ nhớ ít hơn hơn 10 lần
  • Hỗ trợ hơn 20 dịch vụ AWS, vượt qua 408/408 bài kiểm tra SDK
  • Các dịch vụ chính được hỗ trợ:
    • API Gateway v2 / HTTP API**,** Cognito**,** ElastiCache (Redis + xác thực IAM)

    • RDS (PostgreSQL, MySQL, xác thực IAM), S3 Object Lock (COMPLIANCE / GOVERNANCE)

      • DynamoDB Streams, IAM, STS, Kinesis, KMS v.v. được hỗ trợ đầy đủ
      • Trên LocalStack, các tính năng trên chỉ được hỗ trợ một phần hoặc chưa được hỗ trợ

Bắt đầu nhanh

  • Cung cấp ví dụ cấu hình docker-compose.yml cơ bản
    • Sử dụng cổng 4566, mount thư mục cục bộ ./data
  • Lệnh chạy:
    docker compose up
    
  • Có thể truy cập mọi dịch vụ tại http://localhost:4566
  • Có thể dùng giá trị tùy ý cho thông tin xác thực AWS (AWS_ACCESS_KEY_ID=test, AWS_SECRET_ACCESS_KEY=test)
  • Ví dụ lệnh:
    • aws s3 mb s3://my-bucket
    • aws sqs create-queue --queue-name my-queue
    • aws dynamodb list-tables

Tích hợp SDK

  • Có thể dùng nguyên trạng chỉ bằng cách thay đổi endpoint của AWS SDK hiện có
  • Ví dụ theo từng ngôn ngữ chính:
  • Trong mọi ví dụ, regionus-east-1 và thông tin xác thực dùng giá trị "test"

Thẻ image

  • latest: image native, được khuyến nghị với tốc độ khởi động dưới 1 giây
  • latest-jvm: image nền tảng JVM, ưu tiên tính tương thích đa nền tảng
  • x.y.z / x.y.z-jvm: bản phát hành cố định theo phiên bản

Cấu hình môi trường

  • Mọi cấu hình đều có thể được ghi đè bằng biến môi trường có tiền tố FLOCI_
  • Các biến chính:
    • QUARKUS_HTTP_PORT: mặc định 4566
    • FLOCI_DEFAULT_REGION: mặc định us-east-1
    • FLOCI_DEFAULT_ACCOUNT_ID: mặc định 000000000000
    • FLOCI_STORAGE_MODE: chọn giữa memory, persistent, hybrid, wal (mặc định hybrid)
    • FLOCI_STORAGE_PERSISTENT_PATH: đường dẫn thư mục dữ liệu (./data)
  • Tài liệu cấu hình đầy đủ: configuration docs
  • Cấu hình lưu trữ theo từng dịch vụ: storage docs

Giấy phép

  • Được cung cấp theo giấy phép MIT, cho phép sử dụng và chỉnh sửa tự do không giới hạn

1 bình luận

 
GN⁺ 2026-03-23
Ý kiến Hacker News
  • Tôi ước các nhà cung cấp đám mây như AWS, GCP, Azure sẽ chính thức cung cấp trình giả lập cho phát triển cục bộ
    Hiện tôi đang dùng nhiều serverless stack của AWS, và việc kiểm thử tích hợp trên máy local gần như là bất khả thi
    Localstack là một phương án thay thế ổn, nhưng nếu AWS tự cung cấp tính năng này thì trải nghiệm của lập trình viên chắc sẽ tốt hơn nhiều

    • Trình giả lập local chính thức nghe thì hấp dẫn đấy, nhưng trên thực tế AWS sẽ rơi vào tình huống phải giải thích từng khác biệt trong hành vi của S3, IAM, Kinesis v.v.
      Mọi người sẽ nhầm những khác biệt đó là lỗi của AWS, nên từ góc nhìn của AWS đây sẽ là một cơn ác mộng hỗ trợ
    • Tôi có xem dự án local-web-services do một kỹ sư AWS tạo ra, và nó cung cấp tính năng khá tương tự
      Cũng thú vị khi thấy Localstack bị cạnh tranh nhờ xu hướng shift-left infrastructure tooling dựa trên AI
    • Trước đây Microsoft từng cung cấp một sandbox một node tên là Azure Service Dev Kit (ASDK)
      Giờ nó đã bị thu hẹp lại, nhưng trước kia ý tưởng là mô phỏng toàn bộ Azure cloud ngay trên máy local
    • Tôi hoàn toàn không đồng ý với quan điểm này
      Phần mềm nên được thiết kế theo hướng trừu tượng hóa và dựa trên interface để không bị phụ thuộc vào API của một cloud cụ thể
    • Cloudflare có cung cấp trình giả lập local cho nền tảng serverless của họ, và nó hoạt động khá tốt
  • Loại công cụ này với tôi trông như một nỗ lực vô nghĩa
    Nếu là để unit test thì tốt hơn nên mocking các lời gọi AWS,
    còn nếu là để phát triển local thì an toàn hơn khi thật sự provision môi trường test bằng công cụ IaC như Terraform
    Nếu hành vi của trình giả lập khác với dịch vụ thật, sẽ có nguy cơ bug lọt ra production

    • Hơn nữa, cũng có thể xảy ra hiện tượng đảo ngược là code không chạy tốt ở local nhưng lại chạy bình thường trên AWS thật
  • Tôi tổng hợp lại kinh nghiệm và suy nghĩ của mình về khái niệm “AWS local”

    • Tôi không nghĩ những sản phẩm như thế này sẽ giúp thu hút nhiều khách hàng mới
      Người còn ngại cả việc nhập thẻ tín dụng thì đằng nào cũng không trở thành khách hàng chi tiêu lớn
    • Free tier của AWS khá rộng rãi. Tôi cũng chưa tiêu đến 10 đô một năm
    • Muốn học AWS thì phải tự mình trải nghiệm thực tế của việc kiểm soát chi phí. Bị tính 5 đô lúc đầu còn hơn mất 5.000 đô về sau
    • Ưu điểm thật sự của cloud local là cho phép lặp lại phát triển nhanh mà không có gánh nặng bảo mật
      Nhưng khi triển khai thực tế thì món nợ bảo mật này vẫn phải giải quyết, và trong quá trình đó kiểu code “chạy ngon trên máy tôi” thường sẽ hỏng
    • Localstack nhận được hỗ trợ không chính thức từ AWS nên rất giàu tính năng và tốc độ phát hành cũng nhanh
      Một lựa chọn FOSS khó có thể bắt kịp được mức đó
    • Lý do tôi cần những công cụ như vậy chính là vì mô phỏng quyền IAM
      Nếu muốn tuân thủ nguyên tắc đặc quyền tối thiểu thì phải mở từng quyền một, mà việc này chậm như một trò whack-a-mole với quyền hạn
      Nếu có thể mô phỏng chính xác cả IAM ở local, chu kỳ triển khai có thể được rút ngắn rất nhiều
      Bản trả phí của Localstack có tính năng này, nên tôi tò mò không biết dự án mới làm tốt đến đâu
    • Trong môi trường CI/CD, Localstack gần như là bắt buộc
      Bạn cần chạy nhanh hàng trăm bài kiểm thử tích hợp, còn gọi AWS thật thì không hiệu quả vì độ trễ, vấn đề nhất quán, chi phí, rate limit v.v.
      Việc cấp tài khoản AWS cho từng lập trình viên cũng là một cơn ác mộng quản trị
      Câu kiểu “phải tự ăn một cú hóa đơn AWS thật mới học được” cũng phi thực tế chẳng khác gì nói “muốn hiểu lửa thì phải bị bỏng”
    • Mục đích chính của trình giả lập local là unit test và một phần integration test
      Nếu cấp tài khoản riêng cho từng lập trình viên và chỉ thiết lập billing alert thì vấn đề bảo mật cũng không quá lớn
  • Tôi tò mò không biết dự án này khác moto như thế nào
    Nhiều người không hài lòng với việc Localstack đổi giấy phép, nhưng thực ra đã có những phương án thay thế tốt
    Phạm vi dịch vụ mà moto hỗ trợ rất ấn tượng
    Đội của chúng tôi cũng suýt chuyển sang, nhưng cuối cùng vẫn ở lại nhờ hợp đồng hỗ trợ enterprise của Localstack

  • Trông khá hữu ích cho việc test
    Tôi đang làm tự động hóa đóng gói Lambda bằng Ansible role,
    và sẽ tiện hơn rất nhiều nếu có thể mocking phần kiểm tra xem đã có file zip trên S3 hay chưa

  • Bản Community Edition của LocalStack sẽ kết thúc vào tháng 3/2026, đồng thời dự kiến yêu cầu token xác thực và ngừng cập nhật bảo mật
    Floci được giới thiệu là một phương án thay thế không có những ràng buộc này

    • Thật đáng tiếc khi nó khép lại sau một thời gian dài, nhưng giấy phép enterprise mà công ty tôi dùng thực sự rất tuyệt
      Nó tạo ra vòng phản hồi nhanh và tiết kiệm hàng nghìn giờ vì không phải chờ triển khai CloudFormation
      Chúng tôi thậm chí còn có thể test trên tàu mà không cần kết nối Internet
  • Tên dự án này trong tiếng Romania có nghĩa là “một cục lông nhỏ”, còn trong tiếng lóng thì là lông mu, nghe khá buồn cười

    • Trong tiếng Latin, nó có nghĩa là “búi len”, và còn xuất hiện trong thành ngữ flocci non facio với nghĩa là “không đáng giá gì”
  • Đây đúng là dự án tôi đã chờ đợi
    Tôi thích Localstack, nhưng luôn nghĩ rằng một giải pháp mở do cộng đồng dẫn dắt sẽ phù hợp hơn nhiều
    Nếu có cấu trúc để các kỹ sư AWS trực tiếp đóng góp thì sẽ có lợi cho tất cả mọi người
    Trong lúc việc áp dụng AI đang tăng tốc như hiện nay, kiểm thử tích hợp local là điều bắt buộc

    • Nhưng từ góc nhìn của AWS thì chẳng có lý do gì để họ hỗ trợ một bản sao FOSS
      Thay vào đó, cung cấp chính thức một phiên bản container local sẽ thực tế hơn
    • Hoàn toàn đồng ý. Đặc biệt là khi agent workflow giờ đã có thể thay đổi trạng thái thực tế,
      test local là cách duy nhất để thử nghiệm an toàn các tình huống như “mô hình ảo giác rồi xóa bảng dữ liệu”
  • Tôi đã dùng Localstack rồi và thấy khá ổn
    Có ai biết có thứ gì tương tự cho GCP không?
    bigquery-emulator khá hữu ích,
    nhưng tôi vẫn chưa tìm được thứ gì mô phỏng toàn bộ GCP

  • Tính năng trông thì hay, nhưng lịch sử commit gần như không có, cũng chẳng thấy PR hay issue nào
    Nó trông như một dự án được tạo tự động, nên tôi có cảm giác khó mà tin tưởng
    Tôi không chắc nó có an toàn khi dùng để test với dữ liệu thật hay không

    • Tôi cũng đồng ý. Với một dự án OSS thì nên có tích lũy issue ở mức nào đó để có thể tìm ra điểm có thể đóng góp
      Hiện còn quá sớm, nên tôi sẽ tiếp tục theo dõi
    • Biết đâu đây là một dự án vibe-coded
    • Dự án mới chỉ được một tuần mà đã nghi ngờ như vậy thì hơi quá
      Trước đây người ta tin rằng cứ là mã nguồn mở thì sẽ có ai đó tìm ra lỗ hổng bảo mật,
      nhưng giờ có thể chạy kiểm toán bảo mật bằng LLM
      Nó không hoàn hảo, nhưng kiểu kiểm toán tự động này khiến việc giấu mã độc trở nên khó hơn