世界を動かす技術を、日本語で。

ローカルスタックがGitHubリポジトリをアーカイブし、実行するにはアカウントが必要です

概要

  • LocalStackプロジェクトは 統合イメージ へ移行し、リポジトリは アーカイブ・読み取り専用
  • 開発リソースを AWSエミュレーションの強化 に集中
  • Hobbyプラン を含む多様な利用オプションを提供
  • 問題報告や機能要望は 引き続き受付
  • LocalStackは ローカルAWS開発・テスト のためのフレームワーク

LocalStackプロジェクト統合と今後の対応

  • LocalStackは 統合イメージ への移行を実施
    • これにより 開発の断片化防止、ユーザー体験の向上
    • 対象リポジトリは アーカイブ・読み取り専用 状態
  • 開発リソースを AWSエミュレーション層の強化 に集中
  • これまでの 貢献者への感謝 と今後もエコシステム発展を約束

ユーザーへの影響と利用案内

  • LocalStack for AWSでは 無料Hobbyプラン も提供
    • 非商用利用で従来プロジェクトと同等の機能
  • バグ報告・機能要望 は引き続き受付
    • GitHub IssueやSlackコミュニティで対応
  • 今後も ユーザーの意見を重視 し、サービス改善を継続

LocalStack概要

  • LocalStackは クラウドサービスエミュレーター
    • ノートPCやCI環境で 単一コンテナ として実行
  • AWSアプリケーションやLambda をローカルで動作・テスト可能
  • CDKやTerraform などの複雑な構成もローカルで検証
  • Lambda、S3、DynamoDB、Kinesis、SQS、SNS など多様なAWSサービスをサポート
  • Pro版では 追加APIや高度な機能 も利用可能
  • User Guides で開発者向けの詳細情報を提供

インストール方法

  • LocalStack CLI の利用が最速の導入方法
    • 事前に Docker環境 の構築が必要
  • macOS/Linux(Homebrew使用):
    • brew install localstack/tap/localstack-cli
  • バイナリダウンロード(macOS, Linux, Windows):
    • localstack/localstack-cliから最新版取得
    • PATHに展開:例 sudo tar xvzf ~/Downloads/localstack-cli-*-darwin-*-onefile.tar.gz -C /usr/local/bin
  • PyPI(macOS, Linux, Windows):
    • python3 -m pip install localstack
    • sudoやrootユーザーでの実行は禁止
    • MacOS High Sierraで権限問題が発生する場合はpip install --user localstackを推奨
  • awslocal CLI は別途インストールが必要

クイックスタート

  • LocalStackをDockerコンテナで起動:
    • localstack start -d
  • サービスの状態確認:
    • localstack status services
  • SQSの例:
    • awslocal sqs create-queue --queue-name sample-queue
    • 結果として QueueUrl が返却
  • 詳細な使い方は awslocal CLIドキュメント を参照

実行方法

  • LocalStackの実行オプション
    • LocalStack CLI
    • Docker
    • Docker Compose
    • Helm

利用方法・ドキュメント

  • 公式ドキュメント で詳細な設定や活用方法を案内
    • LocalStack構成
    • CI環境での利用
    • 各種統合
    • 開発者向けツール
    • FAQ
  • GUIクライアントも利用可能
    • LocalStack Web Application
    • LocalStack Desktop
    • LocalStack Docker Extension

リリース・貢献

  • GitHub Releases で変更履歴を確認可能
  • Changelog で拡張リリースノートを提供

コントリビューションとサポート

  • 貢献希望者向けに contributing guide開発環境セットアップガイド を用意
  • コードベースやオープンイシューの参照を推奨
  • SlackコミュニティGitHub Issueトラッカー で質問・要望・議論が可能

コミュニティ・支援

  • コントリビューターとバッカーへの感謝
  • Open Collective でバッカー・スポンサー受付
    • スポンサーはロゴ掲載・Webサイトリンク付与

ライセンス

  • 本バージョンは Apache License, Version 2.0 で提供
  • 利用時は EULA への同意が必要

Hackerたちの意見

ちょっと前に会社でlocalstackを推してたんだけど、CIテストの中でどんどん深く使っていくうちに、サポートしてないことが増えてきてさ。お金払ってるのにサポートや開発者から全然反応がないのが辛い。特にCloud Podやエフェメラルインスタンスの機能は、今のところあんまり役に立たない感じ。ちょっと面白い話だけど、プロ版のクラックは簡単に書けるよ。実際、必要なことができるか確認するために、約1ヶ月それを使ってたんだ。

最初はそのアイデアにワクワクしてたけど、だんだん彼らが維持しようとするサービスエリアがどんどん厳しくなっていくのがわかって、結局うまくいかないだろうなって思った。

あなたのユースケースでサポートされていなかったサービスはどれ? 現在、私たちのエンタープライズ契約では、AppConfig、DynamoDB、ElastiCache、Kinesisストリーム、RDS/Aurora(InnoDBエンジン)、S3、SecretsManager、SNS、SQSなど、一般的なものをすべて使ってる。多分いくつか忘れてるけど、今のところサポートされてないものには当たってない(まだね)。ポッド関連のことには手をつけてないし、今後もその予定はない。おそらく運が良かっただけで、穴や問題には当たらなかったけど、AWSではエスotericな機能はあまり使わない傾向がある。

ずいぶん前に、統合テストのためにLocalstackの小さい部分を使ったことがあるけど、今は何をしているのかは追ってないな。価格プランを見ると、今の有料製品はクラウドベースのサービス、または部分的にクラウドベースになってるみたい。AWSのエミュレーターを使うためにお金を払う理由があまり見当たらないな。普通にAWSのアカウントを使えばいいのに。

彼らはまだOpenCollectiveのアカウントをリンクしてて、そこで1万ドル集めて、残高は5千ドルあるみたい。大きなスケールで見ると大した額じゃないけど、コミュニティやオープンソースのために作られたプラットフォームを使ってビジネスを立ち上げてたのかな?これは「オープンコア」の状況じゃないよ。彼らはリポジトリを閉じて逃げちゃった。もし最初からそのつもりだったなら、あまり倫理的じゃない気がするな。

「オープンコア」ってのは、製品の一部がオープンソースで、一部がプライベートってことだよね。この発表の前に、製品の重要な部分はプライベートだったの?もしそうじゃなければ、誰かがリポジトリをフォークしてすぐに競合を立ち上げられる(FOSSでも有料でも)。(技術的にはそうであっても、すぐにはできないし、再実装が多すぎると、ゼロから始める方が楽だろうけど。)

え、つまりある会社が自分たちの仕事をしばらく公開してたのに、共有をやめて、でも公開したままにしてるの?それで怒ってるの?彼らはOSSのルールに従ってちゃんとやってたし、OSSを続けるのが自分たちの利益にならないって判断したんだよ。コードもOSSの要件通りに残してるし、教科書通りの良い参加者だったよ。一方で、99%の会社は何もオープンソースにしないのに、そっちの「非倫理的」なことには文句言わないの?

またJBossか…。

あなたが嫌いだからって、それが「非倫理的」になるわけじゃないよ。

https://opencollective.com/oc-python-fund/contributions/9388...

自分のデータセンターでオープンソースソフトウェアを使ってインフラを運用する理由が増えてきたね。OpenStackはもう20年近く続いてて、クラウドを運営してるけど、ほとんどガバナンスのドラマがない。オープンソースソフトウェアの上に構築されたプロプライエタリなエコシステムが、ゲートの後ろにロックされてるのが、オープンソースツールを作るための価値あるエコシステムにならないのは驚きじゃないよね。

OpenStackを運用するのは、いくつかのローカルサービスを立ち上げるのに比べて、ものすごいプロジェクトコストになるし、運用の混乱は「ノートパソコンでAPIコールをいくつか偽装する」ってレベルとは全然違う。セルフホスティングは、アップデートやドライバー、k8s/OpenStackのグルーコードも必要だからね。普通の人はローカル開発のためにそんなことしないよ。DIYが好きならMinikubeやPodmanを使った方がいいし、週末も楽しめるしね。

OpenStackは存在する中で最も複雑なプラットフォームの一つで、適切なスキルを持った管理者を見つけるのは非常に難しい。

自分のデータセンターでオープンソースソフトウェアを使ってインフラを運用する理由が増えたね。 でも、彼らがオープンソースでなくなるまで。例えば、LocalStackみたいに。

主要なクラウドプロバイダーに対する統合テスト用のエミュレーターは、次のことを満たすべきだと思う:1. クラウドプロバイダー自身のSDKにとっては基本的な要件であること 2. CNCFのような財団に明らかに居場所があること;結局、どうやって「クラウドネイティブ」になれるっていうの?

はは。クラウドネイティブ ≠ ネイティブクラウドサービス。マーケティングが「インターネット経由でAPIとして消費されるマネージドサービス」という意味から、クラウドコントロールプレーンやコンテナ管理ツールの自己ホスト版のための一般的な傘に成功裏にシフトしたのは、いつも奇妙に感じてた。特定のツールに対する批判ではなくて、ただ…クラウドじゃないってこと。

最初はminio、次にlocalstack。オープンソースのメンテナーとして、コミュニティを見捨てるのは悪意があると思う。マネタイズしたい気持ちはわかるけど、無料の製品を完全に取り除くのは裏切りのように感じる。幸運なことに、デビンと一緒にこのプロジェクトが始まって以来、リアルなS3の上に特定のユースケースに合わせたクリーンボックスエミュレーターを構築してもらってる。一般的ではないけど、すごく速いし、自分が必要とするアサーションを追加するのも簡単。localstackには及ばないけど、限られたユースケースには合ってる。

裏切りのように感じるよね。お金が一番大事な世界に生きていて、ますます手に入れるのが難しくなってきてるし、どんどん必要な額も増えてる(これはすべて意図的な政策で、自然に起こったことじゃない)。お金が十分にない限り、無料で何かをするのは避けたくなるのもわかる。政治に無関心だったエンジニアたちが、今になって政治が悪化してることに驚いてるのも納得。

お金を稼ぎたい気持ちはわかるけど、残念ながらみんな食べていかなきゃいけないからね。

そうだね、これらの動きで1年くらいは持つかもしれないけど、「ライブラリを実装するのに時間がかかる」っていうビジネスモデルの会社は、もう行き詰まってるよ。Localstackは特に目新しいものはないし、ただ時間がかかるだけ。しかも、そのアドバンテージも消えちゃったし、どうせ使わないトークンの割り当てが4週間分くらいかな。

これは懸念すべきトレンドだね。確立されたオープンソースプロジェクトを取り上げて、基本的にユーザーにアカウントを作らせるようにするのは、詐欺のように感じる。コミュニティはオープンソース版に信頼を築いてきたのに、その信頼をサインアップに利用するのはおかしい。企業が利益を上げる必要があるのは理解できるけど、人々が依存してきたリポジトリをアーカイブするよりも、もっと良い方法があるはず。

おそらく、彼らのテストやコードを使った雰囲気のあるアプリが出てきたからじゃないかな。https://github.com/hectorvent/floci

逆みたいだね。READMEには、数ヶ月前のサンセット発表が動機として挙げられているよ。

彼らのコードを使ってるわけじゃなさそうだね。LocalStackはPythonだけど、flociはJavaを使ってるから。

私もAWSを使っている会社で働いていたことがある。クラウドファーストの会社だったから、もっとポータブルな選択肢があってもAWSのものを使わなきゃいけなかった。Localstackを使わないといけなかったけど、本当に好きじゃなかったな。

AWSがLocalStackのようなものを最初から提供しない理由が全然わからない。AWSで本格的なソフトウェアを作るチームは、CI/CDパイプラインでAWSサービスをモックする必要があるのに。開発者に何を期待してるんだろう?「本物のインフラを立ち上げて、できるだけ本番に近づける」って言うかもしれないけど、そうすることでさらにお金を稼ぎつつ、モックの実装やメンテナンスコストを回避できるからだろうね。

僕の基本的な考え方は「ローカルでテストできないものは作らない」なんだ。これってすごく当たり前に思えるけど、PaaSだとそれが難しいんだよね。プロバイダー間で移行が難しい独自の機能を避けられるっていう利点もあるし。ローカルスタックがその原則を現実的にする大きな要素だったんだ。(編集 - でも、これがAWSの利益に反するのは分かるよ!提供してほしいけど、提供しないのも納得だね。)

そもそもクラウドで動かすのをやめた方がいいかもね。Localstackの主なポイントは、AWSがローカルで動かせないってことだったし。ここではそれに問題を感じてる人がいないみたいで、それが一番の問題だと思う。