mcpField
A
artifact-management

artifact-management

github.com/aj-geddesクラウド・DevOps373436 回インストール34 週間前に更新
リポジトリ

artifact-management について

ビルド済みバイナリ、Docker イメージ、パッケージを環境間で管理するためのスキルです。保存、バージョン管理、配布、レジストリへの公開、保持ポリシーを扱います。

主な機能

  1. 01成果物の保存と取得
  2. 02バージョン管理と保持ポリシー
  3. 03Docker イメージの最適化
  4. 04レジストリへの公開と配布
  5. 05成果物のスキャンと検証

活用シーン

  1. 01npm パッケージの公開
  2. 02コンテナレジストリへのイメージ登録
  3. 03ビルド成果物の保存と取得
  4. 04複数レジストリ間での成果物管理

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/aj-geddes/useful-ai-prompts --skill artifact-management

インストール後、Claude Code で/artifact-managementを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
docker-registry-configuration.md
github-container-registry-ghcr-push.md
npm-package-publishing.md
scripts/
validate-pipeline.sh
templates/
pipeline.yaml

詳細

アーティファクト管理

目次

概要

ビルド済みバイナリ、Docker イメージ、パッケージを環境間で保存、バージョン管理、配布するための包括的なアーティファクト管理戦略を実装します。

利用する場面

  • Docker イメージレジストリの管理
  • パッケージの公開とバージョン管理
  • ビルドアーティファクトの保存と取得
  • コンテナイメージの最適化
  • アーティファクトの保持ポリシー
  • 複数レジストリへの配布
  • 依存関係のキャッシュ

クイックスタート

最小限の動作例:

# Dockerfile with multi-stage build for optimization
FROM node:18-alpine AS dependencies
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production

FROM node:18-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

FROM node:18-alpine AS runtime
WORKDIR /app
COPY --from=dependencies /app/node_modules ./node_modules
COPY --from=builder /app/dist ./dist
COPY package*.json ./

EXPOSE 3000
HEALTHCHECK --interval=30s --timeout=3s --start-period=40s --retries=3 \
  CMD node healthcheck.js

CMD ["node", "dist/server.js"]

// ... (see reference guides for full implementation)

リファレンスガイド

詳細な実装については、references/ ディレクトリを参照してください。

ガイド内容
Docker Registry ConfigurationDocker レジストリの設定
GitHub Container Registry (GHCR) PushGitHub Container Registry (GHCR) へのプッシュ
npm Package Publishingnpm パッケージの公開、アーティファクトの保持ポリシー、アーティファクトのバージョン管理、GitLab Package Registry

ベストプラクティス

✅ 実施すること
  • アーティファクトにはセマンティックバージョニングを使用します
  • デプロイ前にイメージスキャンを実施します
  • 古いアーティファクトに保持ポリシーを設定します
  • Docker イメージにはマルチステージビルドを使用します
  • アーティファクトに署名し、検証します
  • アーティファクトの不変性を確保します
  • アーティファクトのメタデータを文書化します
  • 特定のバージョンのベースイメージを使用します
  • 脆弱性スキャンを実施します
  • レイヤーを積極的にキャッシュします
  • イメージにコミット SHA をタグ付けします
  • 保存するアーティファクトを圧縮します
❌ 実施しないこと
  • latest タグのみを識別子として使用する
  • アーティファクトにシークレットを保存する
  • スキャンせずにアーティファクトをプッシュする
  • 信頼できないベースイメージを使用する
  • アーティファクトの検証を省略する
  • 公開済みのアーティファクトを上書きする
  • バイナリアーティファクトとソースアーティファクトを混在させる
  • イメージレイヤーの最適化を無視する
  • 機密データを含むビルドログを保存する

コメント