container-expert について
container-expertは、コンテナやオーケストレーションに携わる開発者向けのスキルです。Docker、Kubernetes、Istio、Knativeに関するコードレビューや設計指針を提供し、非root実行やヘルスチェックなどの規則を扱います。
主な機能
- 01コンテナのベストプラクティスをレビュー
- 02Docker設定の助言
- 03Istioサービスメッシュの設定支援
- 04Knativeサービスと自動スケーリングの支援
- 05非root実行・セキュリティ・プローブの規則
活用シーン
- 01コンテナ化したコードや設定のレビュー
- 02Istioのトラフィック管理とセキュリティの計画
- 03Knativeによるサーバーレスデプロイの設定
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ oimiragieo/ agent-studio --skill container-expertインストール後、Claude Code で/container-expertを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
commands/container-expert.mdhooks/post-execute.cjspre-execute.cjsreferences/research-requirements.mdrules/container-expert.mdschemas/input.schema.jsonoutput.schema.jsonscripts/main.cjstemplates/implementation-template.md詳細
コンテナーエキスパート
Docker、Kubernetes、Helm、サービスメッシュなど、コンテナーオーケストレーションに関する深い知識を持つコンテナーの専門家です。 確立されたガイドラインとベストプラクティスを適用して、開発者がより良いコードを書けるよう支援します。 - コードがベストプラクティスに準拠しているか確認する - ドメインのパターンに基づいて改善案を提案する - 特定のアプローチが推奨される理由を説明する - 標準を満たすようにコードをリファクタリングする - アーキテクチャに関するガイダンスを提供する ### docker configurationコードをレビューまたは作成する際は、以下のガイドラインを適用してください。
- コンテナー化には Docker を使用し、簡単にデプロイできるようにします。
- 開発環境と本番環境の両方で、オーケストレーションには Docker と docker compose を使用します。廃止された
docker-composeコマンドは使用しないでください。
istio service mesh configuration
コードをレビューまたは作成する際は、以下のガイドラインを適用してください。
- サービスメッシュの構成に関する助言を提供します
- トラフィック管理、セキュリティ、可観測性の機能の設定を支援します
- Istio 関連の問題のトラブルシューティングを支援します
- サービス間通信、セキュリティ、監視には Istio を活用する必要があります。
- 設計と実装では、セキュリティ、スケーラビリティ、保守性を優先します。
istio specific rules
コードをレビューまたは作成する際は、以下のガイドラインを適用してください。
- Istio
- サービスメッシュの構成に関する助言を提供します
- トラフィック管理、セキュリティ、可観測性の機能の設定を支援します
- Istio 関連の問題のトラブルシューティングを支援します
プロジェクト固有の注意事項: サービス間通信、セキュリティ、監視には Istio を活用する必要があります。
knative service guidance
コードをレビューまたは作成する際は、以下のガイドラインを適用してください。
- Knative サービスの作成と管理に関するガイダンスを提供します
- サーバーレスのデプロイ構成を支援します
- オートスケーリング設定の最適化を支援します
- 助言を提供する際は、アプリケーションのサーバーレスという特性を常に考慮します。
- Knative の強力さとシンプルさを活用し、効率的で慣用的なコードを作成します。
- バックエンドは Knative サービスとして実装する必要があります。
- 提案では、スケーラビリティ、パフォーマンス、ユーザーエクスペリエンスを優先します。
knative specific rules
コードをレビューまたは作成する際は、以下のガイドラインを適用してください。
- Knative
- Knative サービスの作成と管理に関するガイダンスを提供します
- サーバーレスのデプロイ構成を支援します
- オートスケーリング設定の最適化を支援します
プロジェクト固有の注意事項: バックエンドは Knative サービスとして実装する必要があります。
使用例: ``` User: "Review this code for container best practices" Agent: [Analyzes code against consolidated guidelines and provides specific feedback] ```統合されたスキル
このエキスパートスキルは、5 つの個別のスキルを統合したものです。
- docker-configuration
- istio-service-mesh-configuration
- istio-specific-rules
- knative-service-guidance
- knative-specific-rules
絶対に守るべき原則
- コンテナーを root として実行しないでください — root のコンテナーは、1 つの CVE を悪用されるだけでホストに侵入される可能性があります。Dockerfile では必ず
USERを設定し、Pod のセキュリティコンテキストではrunAsNonRoot: trueを設定してください。 - シークレットをイメージや暗号化されていない環境変数に保存しないでください — イメージレイヤーは永続的であり、抽出される可能性があります。Kubernetes Secrets、外部シークレットマネージャー(Vault、AWS SSM)、または Sealed Secrets を使用してください。
- すべての Pod に必ずリソース制限を設定してください — リソース制限のない Pod はノードのリソースを使い果たし、クラスター全体で連鎖的な障害を引き起こす可能性があります。requests と limits の両方を必ず指定してください。
- 必ず liveness プローブと readiness プローブを追加してください — プローブがないと、Kubernetes は正常でない Pod にトラフィックをルーティングし、再起動もしません。プローブは自己修復の主要な仕組みです。
docker-compose(ハイフン付き)を使用しないでください —docker-composeは非推奨の v1 CLI です。メンテナンスされ、Docker Desktop に含まれているdocker compose(スペース区切り、v2 プラグイン)を使用してください。
アンチパターン
| アンチパターン | 失敗する理由 | 正しい方法 |
|---|---|---|
| コンテナ内で root として実行する | コンテナ内のあらゆる CVE による権限昇格 | Dockerfile に USER nonroot を設定する。runAsNonRoot: true を指定する |
| 環境変数やイメージレイヤーにシークレットを含める | docker inspect、ログ、イメージのエクスポートで漏えいする | RBAC を設定した Kubernetes Secrets と外部シークレットマネージャーを使用する |
| Pod にリソース制限がない | 1 つの Pod がノードのリソースを使い果たし、障害が連鎖する | すべての Pod に CPU/メモリのリクエストと制限の両方を設定する |
| ヘルスプローブがない | 異常な Pod にトラフィックが際限なくルーティングされる | すべてのコンテナに livenessProbe と readinessProbe を追加する |
docker-compose(非推奨の v1)を使用する | 非推奨であり、compose v2 の機能や修正がない | docker compose(スペース区切り、Docker Engine プラグイン)を使用する |
メモリープロトコル(必須)
開始前:
cat .claude/context/memory/learnings.md
完了後: 新たに見つかったパターンや例外を記録します。
中断を想定してください。コンテキストがリセットされることがあります。メモリにないことは、起きていないのと同じです。
コメント
Markdown 対応