Docker System
# View system information
docker info
# View disk usage
docker system df
# Clean up unused data
docker system prune
docker system prune -a # Remove all unused
# View daemon logs
docker system events
# View Docker version
docker version
# Login to registry
docker login
docker logout
System-level Docker commands
Multi-stage Builds
# Example Dockerfile
FROM node:14 AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci --only=production
COPY . .
RUN npm run build
FROM nginx:alpine AS production
COPY --from=builder /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Optimizing Docker images
Dockerfile Best Practices
# Use specific tags
FROM node:14-alpine
# Leverage layer caching
COPY package*.json ./
RUN npm ci --only=production
COPY . .
# Use multi-stage builds
# Run as non-root user
USER node
# Set working directory
WORKDIR /app
# Expose ports explicitly
EXPOSE 3000
# Use .dockerignore
Writing efficient Dockerfiles