🔧 DevOps

Container Security

Secure Docker containers for production deployments.

Base Image Selection

# Use minimal, non-root images
FROM node:20-alpine AS runtime
RUN addgroup -g 1001 gauzy && adduser -u 1001 -G gauzy -s /bin/sh -D gauzy
USER gauzy

Security Hardening

Read-Only Filesystem

securityContext:
  readOnlyRootFilesystem: true
  runAsNonRoot: true
  runAsUser: 1001
  allowPrivilegeEscalation: false
  capabilities:
    drop: ["ALL"]

Resource Limits

resources:
  limits:
    cpu: "2"
    memory: "2Gi"
  requests:
    cpu: "500m"
    memory: "512Mi"

Image Scanning

# Scan with Trivy
trivy image ghcr.io/ever-co/gauzy-api:latest

# Scan with Docker Scout
docker scout cves ghcr.io/ever-co/gauzy-api:latest

Best Practices

PracticeDescription
Multi-stage buildsMinimize image size
.dockerignoreExclude secrets, dev files
No rootRun as non-root user
Pin versionsUse exact image tags
Scan regularlyCI/CD vulnerability scanning
Limit capabilitiesDrop ALL, add only needed
Read-only FSPrevent runtime file writes
Health checksContainer-level health probes

Edit this page

Copyright © 2023-Present Ever Co. LTD.Docs by Sourcey