← スキル一覧に戻る

docker
by TakumiOkayasu
dotfiles for work
⭐ 0🍴 0📅 2026年1月23日
SKILL.md
name: docker description: Dockerfileやdocker-compose設定を作成する際に使用。
Docker
📋 実行前チェック(必須)
このスキルを使うべきか?
- Dockerfileを作成する?
- docker-composeを設定する?
- コンテナ化を検討する?
- マルチステージビルドを行う?
前提条件
- ベースイメージを選定したか?
- 必要なポートを把握しているか?
- 環境変数を整理したか?
禁止事項の確認
- latestタグを使おうとしていないか?
- rootユーザーで実行しようとしていないか?
- 機密情報をイメージに含めようとしていないか?
- 不要なファイルをコピーしようとしていないか?
トリガー
- Dockerfile作成時
- docker-compose設定時
- コンテナ化検討時
- マルチステージビルド時
🚨 鉄則
イメージは小さく、レイヤーは少なく、セキュリティを意識。
Dockerfile
# ⚠️ 具体的なバージョンを指定
FROM node:20-alpine
WORKDIR /app
# 依存関係を先にコピー(キャッシュ効率化)
COPY package*.json ./
RUN npm ci --only=production
# アプリケーションコード
COPY . .
# 非rootユーザー
USER node
EXPOSE 3000
CMD ["node", "dist/index.js"]
マルチステージビルド
# ビルドステージ
FROM node:20-alpine AS builder
WORKDIR /app
COPY . .
RUN npm ci && npm run build
# 実行ステージ
FROM node:20-alpine
WORKDIR /app
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/package*.json ./
RUN npm ci --only=production
USER node
CMD ["node", "dist/index.js"]
.dockerignore
node_modules
.git
.env
*.log
🚫 禁止事項まとめ
- latestタグの使用
- rootユーザーでの実行
- 機密情報のイメージ含有
- 不要ファイルのコピー
スコア
総合スコア
50/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
○LICENSE
ライセンスが設定されている
0/10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です