spec - スコア仕様は、開発者中心でプラットフォームに依存しないワークロード仕様を提供し、開発者の生産性とエクスペリエンスを向上させます。これにより、環境間の構成の不整合が解消されます。

(The Score Specification provides a developer-centric and platform-agnostic Workload specification to improve developer productivity and experience. It eliminates configuration inconsistencies between environments.)

Created at: 2022-11-01 00:17:28
Language:
License: Apache-2.0

スコア

スコアバナー

スコアスコアとは何ですか?

Score は、プラットフォームに依存しないオープン ソースのコンテナー ベースのワークロード仕様です。つまり、スコア仕様を使用してワークロードを一度定義してから、スコア実装 CLI を使用して、Helm、Docker Compose、Google Cloud Run などの複数のプラットフォームに変換できます。

次の例では、スコア作成を介してファイルが実行されてファイルが生成され、ユーザーは Docker Compose を介してコンテナーをスピンアップできます。次に、同じファイルを使用して、Kubernetes にインストールする helm ファイルを生成します。

score.yaml
compose.yaml
score.yaml
values.yaml

デモ.gif

このプロジェクトは、複数のプラットフォームで動作する単一のyamlファイルを定義するだけで、開発者の労力と認知的負荷を軽減することを目的としています。

Score は、他のワークフローと組み合わせることで開発者エクスペリエンスを向上させるのに役立ち、yaml を置き換えるものではありません。インフラストラクチャ チームと開発チームは、この仕様を使用して、組織全体のワークフローを改善できます。

Score を使用すると、次の利点があります。

  • 開発者は、これらすべてのプラットフォームで実行されるワークロードを定義するために、スコア仕様を学ぶだけで済みます。
  • スコア仕様は、構成の量を減らすために複数の環境に適用されるように設計されています。
  • インフラストラクチャ チームは、開発者が作業できるリソースと複数のプラットフォームの定義と構成を支援できます。

現時点では Score はまだアルファ版ですが、コミュニティの貢献を通じて実装のユースケースが急速に拡大することを望んでいます。

スコアなぜスコア?

クラウドネイティブ開発者は、環境間の構成の不整合に苦労することがよくあります。各環境のテクノロジースタックが異なる場合、これはさらに複雑になります。ローカル開発には Docker Compose を使用し、Kubernetes ベースの開発環境にデプロイするには Helm Charts を使用する場合はどうなりますか?

Docker ComposeとHelmを理解する必要があるだけでなく、それらを同期させる必要があります。

これにより、アプリケーション配信ライフサイクルに沿ってさまざまなボトルネックが発生します。

🎵専門的な知識と運用上の専門知識を必要とする技術&ツールは、開発者に課せられます。

🎵ローカル環境とリモート環境の間で構成ルール、構造、および値が異なると、構成の不整合のリスクが高まります。

🎵プラットフォームおよび環境固有の多数の構成ファイルの同期を維持すると、構成作業が繰り返されます。

Score は、各ワークロードに対して、そのランタイム要件を宣言的な方法で記述する、理解しやすい単一の仕様を提供します。このファイルを使用すると、自動化された標準化された一方向の方法で構成を生成できます。

score.yaml

環境間で誤って指定されたり、構成に一貫性がなかったりするリスクを減らすことで、開発者が日常業務に集中し、喜びを育むことを望んでいます。

スコアスコアはどのように機能しますか?

スコアの仕組み

上の図に示すように、Score のコンテキストで考慮すべき 3 つのコア コンポーネントがあります。

スコア仕様ファイルは、プラットフォームに依存しないワークロード仕様であり、score-compose や score-helm などのスコア実装 (CLI) に対して実行して、 Helm ファイルなどのプラットフォーム構成ファイルを生成できます。 生成された構成ファイルを環境固有のパラメーターと組み合わせて、ターゲット環境でワークロードを実行できます。

docker-compose.yaml
values.yaml

取り付け取り付け

スコア実装をインストールするには、各リポジトリのインストールガイドを参照してください。

お探しの実装が見つかりませんか?スコア仕様は、Kustomize、Amazon ECS、Google Cloud Run、Nomadなどの多くのコンテナオーケストレーションプラットフォームやツールと統合できる可能性があります。次世代のスコア実装CLIの形成を支援し、ここから貢献を始めましょう。

参加する参加する

貢献貢献

貢献は、オープンソースコミュニティを学習、刺激、創造のための素晴らしい場所にするものです。あなたが行う貢献は大歓迎です。

これを改善する提案がある場合は、リポジトリをフォークしてプルリクエストを作成してください。タグで課題を開くこともできます。

enhancement

  1. プロジェクトをフォークします。
  2. 機能ブランチを作成します。
    git checkout -b feature/feature-name
  3. 変更をコミットします。
    git commit -s -m "Add some AmazingFeature"
  4. ブランチにプッシュします。
    git push origin feature/feature-name
  5. プル要求を開きます。

ドキュメンテーション

ドキュメントは docs.score.dev にあります。

ロードマップ

ロードマップを参照してください。アイデアはいつでも提出できます。

ライセンス

ライセンス

行動規範

寄稿者規約