Přeskočit na obsah
_CORE
Cloud Pokročilý

Dockerfile Best Practices

DockerDockerfileOptimalizace
3 min čtení

Optimalizace Dockerfile pro menší images, rychlejší build a bezpečnost.

Multi-stage build

# Build stage
FROM node:20 AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build

# Production stage
FROM node:20-alpine
WORKDIR /app
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/node_modules ./node_modules
USER node
EXPOSE 3000
CMD ["node", "dist/server.js"]

Best practices

  • Používejte alpine base images
  • Oddělte COPY package.json od COPY . (layer caching)
  • Přidejte .dockerignore
  • Spouštějte jako non-root user
  • Používejte specific tags, ne :latest
  • Minimalizujte počet vrstev

.dockerignore

node_modules
.git
.env
*.md
Dockerfile
docker-compose.yml

Shrnutí

Správný Dockerfile = malý image, rychlý build, bezpečný runtime. Multi-stage builds jsou základ.

Potřebujete pomoct s implementací?

Náš tým má zkušenosti s návrhem a implementací moderních architektur. Rádi vám pomůžeme.

Nezávazná konzultace