Docker Patterns

affaan-m/ECC/docs/ja-JP/skills/docker-patterns

作者 affaan-mef648e01899ba3e8dc6371642deaaf64b4477775無授權條款275K 個星標收錄於 2026年10月9日更新於 2026年10月9日儲存庫4 天前更新

Docker イメージの構築、最適化、マルチステージビルド、ネットワーク、ボリューム管理。本番環境デプロイメント用のベストプラクティス。

僅含說明DevOps & Cloud
AI 產生的概覽

指導撰寫生產級 Dockerfile、多階段建置、映像檔最佳化、網路與磁碟區管理。

功能
提供 Docker 最佳實務指引,涵蓋 Dockerfile 撰寫、映像檔體積最小化、層快取、多階段建置、非 root 使用者與健康檢查等安全措施、docker-compose 服務定義,以及部署檢查清單。此技能僅提供說明,產出的是文字指引與 Dockerfile、compose 範例片段,不會實際執行任何操作。
適用情境
適用於撰寫或審查 Dockerfile、最佳化映像檔體積、設定多階段建置、配置容器網路或持久化磁碟區,以及規劃容器部署策略的情境。
執行需求
不需要任何工具、套件或憑證;不附帶指令碼,僅提供說明與範例設定片段。

Docker パターン

本番環境対応のDocker イメージとコンテナ。

使用時期

  • Dockerfile を書く
  • イメージサイズを最適化
  • マルチステージビルド
  • ネットワークと永続化を設定
  • デプロイメント戦略

Dockerfile ベストプラクティス

1. イメージサイズを最小化

dockerfile
FROM node:18-alpine AS buildWORKDIR /appCOPY package*.json ./RUN npm install
FROM node:18-alpineWORKDIR /appCOPY --from=build /app/node_modules ./node_modulesCOPY . .CMD ["node", "server.js"]

2. レイヤー最適化

dockerfile
# キャッシュを活用するため、変更がない部分を上にFROM node:18-alpineWORKDIR /app
# 依存関係(変更が少ない)COPY package*.json ./RUN npm install
# アプリケーション(頻繁に変更)COPY . .
CMD ["node", "server.js"]

3. セキュリティ

  • root ユーザーで実行しない
  • シークレットを避ける
  • ヘルスチェック追加
dockerfile
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \  CMD node healthcheck.js

docker-compose

yaml
version: '3.8'services:  app:    build: .    ports:      - "3000:3000"    environment:      - NODE_ENV=production    volumes:      - ./data:/app/data    depends_on:      - db  db:    image: postgres:15    environment:      - POSTGRES_PASSWORD=secret

チェックリスト

  • イメージサイズ最適化
  • セキュリティスキャン
  • ヘルスチェック
  • ログ管理
  • ネットワーク構成

詳細については、ドキュメントを参照してください。

來源與署名

來源:affaan-m/ECC位於docs/ja-JP/skills/docker-patterns提交ef648e0

授權條款: 無授權條款

內容歸原作者所有。SourceWeft 從公開儲存庫中收錄這些內容。

檢舉或申請下架