跳到主要内容
知仓学习社ZHICANG

docker-patterns

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

不碰外部(只输出文字)无严重或高危命中affaan-m/ECC

它会碰到什么

扫了多少1 个文本文件,1 KB
它会碰到什么不碰外部(只输出文字)
命中总数0 处
命中统计严重 0 · 高 0 · 中 0 · 低 0

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

Docker パターン

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

使用時期

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

Dockerfile ベストプラクティス

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

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

FROM node:18-alpine
WORKDIR /app
COPY --from=build /app/node_modules ./node_modules
COPY . .
CMD ["node", "server.js"]

2. レイヤー最適化

# キャッシュを活用するため、変更がない部分を上に
FROM node:18-alpine
WORKDIR /app

# 依存関係(変更が少ない)
COPY package*.json ./
RUN npm install

# アプリケーション(頻繁に変更)
COPY . .

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

3. セキュリティ

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

docker-compose

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

チェックリスト

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

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

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。

同名技能的其他版本

有 6 个不同仓库或目录里都有叫 docker-patterns 的技能。它们内容并不相同,别混用:

  • affaan-m/ECC — >
  • affaan-m/ECC — Patrones de Docker y Docker Compose para desarrollo local, seguridad de contenedores, netw
  • affaan-m/ECC — Yerel geliştirme, konteyner güvenliği, ağ, volume stratejileri ve multi-servis orkestrasyo
  • affaan-m/ECC — 用于本地开发的Docker和Docker Compose模式,包括容器安全、网络、卷策略和多服务编排。
  • affaan-m/ECC — Docker and Docker Compose patterns for local development, hardened CLI installer harnesses