Docker
Best practice-ek
Kis image-ek, .dockerignore, nem-root futtatás, konkrét tag-ek, env/secrets, layer és healthcheck.
Best practice-ek
Kis méretű image-ek
# ❌ Nem ajánlott
FROM node:18
# ✅ Ajánlott
FROM node:18-alpine.dockerignore használata
node_modules
.git
.env
.env.*
*.log
dist
build
coverage
.DS_Store
.nextNe futtasd root-ként
RUN addgroup -S app && adduser -S app -G app
USER appKonkrét tag-ek használata
# ❌ Kerüld
FROM node:latest
# ✅ Reprodukálható
FROM node:18.19.0-alpineEnvironment változók és secretek
- Dev:
.env+ composeenv_file - Prod: titkokat ne commit-old; használj secret managementet
Layer optimalizálás és cache
RUN apt-get update \
&& apt-get install -y curl git \
&& rm -rf /var/lib/apt/lists/*Healthcheck
HEALTHCHECK --interval=30s --timeout=3s --start-period=5s --retries=3 \
CMD curl -f http://localhost:3000/health || exit 1Rövid összefoglaló
- Alpine +
.dockerignore+ konkrét tag = gyorsabb és biztonságosabb build. - Root futtatás kockázat, kerüld.
- Cache és layer stratégia gyorsítja a CI/CD-t.