← スキル一覧に戻る

dockerfile-review
by mhalder
Modular Linux development environment dotfiles managed with tuckr, featuring shell configurations, development tools, and automated installation hooks
⭐ 1🍴 0📅 2026年1月24日
SKILL.md
name: dockerfile-review description: Review Dockerfiles for best practices, security, and optimization. Use when the user says "review Dockerfile", "optimize image", "Dockerfile best practices", "reduce image size", or asks to audit a container build. allowed-tools: Read, Glob, Grep
Dockerfile Review
Audit Dockerfiles for security, efficiency, and best practices.
Instructions
- Read the Dockerfile
- Check for issues in each category below
- Report findings with severity (critical/warning/suggestion)
- Provide specific fixes with corrected code
Security checks
- MUST flag
USER rootwithout switching back - MUST flag secrets in ENV, ARG, or COPY (API keys, passwords)
- MUST flag
apt-get installwithout--no-install-recommends - Flag missing
USERdirective (runs as root by default) - Flag
COPY . .(may include secrets, .git, etc.) - Flag
:latesttags (unpinned versions) - Flag
curl | shpatterns
Optimization checks
- Multi-stage builds for compiled languages
- Layer ordering (least-changing first)
- Combined RUN statements to reduce layers
- Cache mounts for package managers:
--mount=type=cache .dockerignorefile exists and covers .git, node_modules, etc.apt-get clean && rm -rf /var/lib/apt/lists/*in same layer
Best practices
# Good: pinned, non-root, minimal
FROM python:3.11-slim@sha256:abc123...
WORKDIR /app
RUN useradd -r -s /bin/false appuser
COPY requirements.txt .
RUN --mount=type=cache,target=/root/.cache/pip \
pip install -r requirements.txt
COPY --chown=appuser:appuser . .
USER appuser
CMD ["python", "app.py"]
Output format
## Critical
- Line 5: Running as root without USER directive
## Warnings
- Line 12: Using :latest tag - pin to specific version
## Suggestions
- Line 8-10: Combine RUN statements to reduce layers
Rules
- MUST read the Dockerfile before reviewing
- MUST categorize issues by severity
- Never approve Dockerfiles with hardcoded secrets
- Always check for corresponding .dockerignore
スコア
総合スコア
70/100
リポジトリの品質指標に基づく評価
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
✓説明文
100文字以上の説明がある
+10
○人気
GitHub Stars 100以上
0/15
○最近の活動
3ヶ月以内に更新がある
0/10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
○タグ
1つ以上のタグが設定されている
0/5
レビュー
💬
レビュー機能は近日公開予定です