D11.1 Podman vs Docker 🆚

Βασικές διαφορές

┌─────────────────────────────────────────────────────────┐
│             Docker vs Podman                            │
├─────────────────────────┬───────────────────────────────┤
│ Docker                  │ Podman                        │
├─────────────────────────┼───────────────────────────────┤
│ Requires daemon         │ Daemonless ✅                  │
│ root daemon by default  │ Rootless by default ✅         │
│ docker.sock (security!) │ No socket needed ✅            │
│ Docker Hub focus        │ OCI-compliant (any registry)  │
│ docker compose          │ podman-compose / quadlets     │
│ Universal support       │ RHEL/Fedora native ✅          │
│ Docker Swarm            │ Kubernetes (Podman play kube) │
└─────────────────────────┴───────────────────────────────┘

Γιατί Podman;

Λόγοι για Podman:
│
├── Rootless security:
│   └── Containers τρέχουν ΩΣ ο user (όχι root!)
│       Παραβίαση container → user privileges μόνο
│
├── Daemonless:
│   └── Δεν υπάρχει background process
│       Αν crash → containers συνεχίζουν
│
├── systemd integration (Quadlets):
│   └── Native auto-start, restart, monitoring
│
├── Red Hat ecosystem:
│   └── RHEL, Fedora, openSUSE default
│       SELinux integration
│
└── Drop-in Docker replacement:
    └── Ίδιες εντολές (alias docker=podman)

Ίδιες εντολές

# Σχεδόν ταυτόσημο API:
docker run nginx           ↔  podman run nginx
docker build .             ↔  podman build .
docker ps                  ↔  podman ps
docker-compose up          ↔  podman-compose up

# Alias για migration:
alias docker=podman

Σύνοψη D11.1

Podman vs Docker
│
├── Rootless: containers ως regular user
├── Daemonless: χωρίς background process
├── systemd: native integration (Quadlets)
├── Ideal: RHEL/Fedora, high-security environments
└── Compatible: ίδιο CLI API με Docker