Dockerfileをサイズ・安全性・ビルド時間で見直す
Dockerfileをイメージサイズ、ビルドキャッシュ、root権限、秘密情報の点で確認し、理由付きの改善版を返すプロンプト。お好きなAIツールに貼り付けると、AIがDockerfileを確認する。
- テーマ
- アプリ・プロトタイプ
- 種類
- プロンプト
- レベル
- 中級
- 所要時間
- 約8分
結果はツール、モデル、入力内容によって変わります。
結果のプレビュー
例:当サイトの編集部が書いたもので、実際のAIの出力ではありません。
変更前 1.2 GB · 変更後 約180 MB FROM node:22-slim AS build WORKDIR /app COPY package*.json ./ RUN npm ci COPY . . RUN npm run build FROM node:22-slim WORKDIR /app COPY --from=build /app/dist ./dist COPY --from=build /app/node_modules ./node_modules USER node CMD ["node", "dist/server.js"] 変更 · 理由 · 効果 latestではなく固定バージョン · 同じビルド · 再現できる package.jsonを先に · 依存関係をキャッシュ · ビルドが速い 2段階目 · ビルド用ツールを含めない · 小さい USER node · rootなし · 安全 発見:API_KEYがビルド内にあった → 削除し、実行時に渡す。
入力する
入力した内容はこのブラウザ画面の中だけにとどまります。当サイトが保存・送信することはありません。
- Node.jsのWeb API
- バックグラウンド処理のあるPythonサービス
- Webサーバーの後ろの静的サイト
- Javaアプリ
- Goのプログラム
- イメージを小さく
- ビルドを速く
- 安全上のリスクを減らす
- ビルドを再現可能に
- すべてをバランスよく
あなたのプロンプト
プロンプトを編集しました。上の入力欄を変えても、もう上書きされません。
これはAIへの指示文で、まだ完成品ではありません。
このプロンプトが使えるツール
このプロンプトに向いているAIツール:
使い方
- 項目を入力するか、候補をタップします。氏名、住所などの個人情報は入れません。
- 完成したプロンプトをお好きなAIツールに貼り付けます。
- 新しいイメージを一度ローカルでビルドし、サイズとビルド時間を比べ、テストを通してから採用します。
なぜうまくいくのか
決まった順番で確認するので、イメージが大きい、遅い、危ないといったよくある原因をもれなく押さえられます。理由と効果の表があると、レビューで変更を追いやすくなります。
ヒント
- root以外のユーザーに切り替えたら、ログや一時ファイルなど、アプリが書き込む必要のある場所に書けるか確認します。