Kubernetes/Utils (tools)

[Kubernetes] Docker vs Podman

아무일도없었다 2023. 3. 1. 19:46

Kubernetes가 Docker를 사용하지 않으려고 계속 노력하는 중이다. 

 

그 이유에는 여러 가지가 있지만 kubernetes 설치 시 docker 설치가 필요 없어졌고, image 개발 시에도 굳이 docker를 사용하지 않아도 되었다.

 

결정적으로 linux의 일정버전 이상부터는 docker가 아닌 podman을 사용을 권장하는만큼 어떤 차이가 있는지 확인해 보았다.

 

 

  1. Daemon less
    • podman 은 container를 실행하기 위한 데몬이 필요없지만, docker 는 container 를 관리하기 위해 백그라운드에서 데몬 프로세스를 실행해야 한다.
  2. Rootless
    • podman 은 container 를 일반 user로 실행할 수 있고, docker는 container 실행을 하기 위해 root 권한이 필요하다.
  3. Image format
    • podman 은 OCI (Open Container Initiative) image format을 사용하고, docker 는 자체 docker image format 을 사용한다.
  4. Networking
    • Docker는 user-defined networks 및 overlay networks를 생성하는 기능에서 podman 보다 발전된 모델을 가지고 있다.
  5. Command line interface
    • podman 은 docker의 명령어 그대로 사용이 가능하지만 docker에서는 지원하지 않는 기능이 추가되어 있고 몇몇 플래그가 다를 수 있다.

 


[결론]

podman은 docker 보다 보안적인 측면으로는 우수하다.
따라서 (Rootless), docker 가 제공하는 모든 기능을 사용하지 않는다면 podman 사용이 좋아보인다.
반응형