Docker

Definition

Docker is an open-source platform designed to automate the deployment, scaling, and management of applications within lightweight, portable containers. Containers package an application and its dependencies, ensuring consistent behavior across different environments. Docker provides tools to build, ship, and run applications efficiently, leveraging containerization to enhance resource utilization and streamline development workflows.

Secure Settings Example

version: '3.8'
services:
  app:
    image: myapp:latest
    ports:
      - "8080:8080"
    deploy:
      resources:
        limits:
          cpus: '0.50'
          memory: '512M'
    security_opt:
      - no-new-privileges:true
    read_only: true
    tmpfs:
      - /tmp

Insecure Settings Example

version: '3.8'
services:
  app:
    image: myapp:latest
    ports:
      - "8080:8080"
    privileged: true
    volumes:
      - /host/path:/container/path