minikube + podman
발단은 OpenFaaS라는 녀석을 써볼까 싶어 시작 한 것인데. 이 녀석이 k8s를 필요로 하고, 두 가지 방법이 권장된다.
k8s 혹은 docker swarm.
나는 podman에 치중하고 있음으로, 당연 swarm이 있을리 없고, 단일 컴퓨트를 사용하고 있기 때문에, k8s도 가지고 있지 않다.
궁여지책으로 minikube를 생각했더니, 이론상으로는 되는데, 현실적인 문제에 직면하는 것 같다.
Minikube에서 “The ‘podman’ driver should not be used with root privileges"라는 메시지가 나타나는 이유는, Podman 드라이버가 root 권한이 아닌 일반 사용자(rootless)로 실행되는 것이 보안상 권장되기 때문입니다. Podman은 기본적으로 rootless(비루트) 컨테이너 실행을 지향하며, root 권한으로 실행할 경우 보안 위험이 커질 수 있습니다.
왜 root 권한 사용이 비권장되는가? 보안 위험: root 권한으로 컨테이너를 실행하면, 컨테이너 내부에서 취약점이 발생할 경우 호스트 시스템 전체에 영향을 줄 수 있습니다.
Podman의 설계 철학: Podman은 rootless 환경에서 동작하도록 설계되어 있습니다. root 권한이 필요한 경우는 극히 제한적으로, 특별한 이유가 없다면 일반 사용자로 실행하는 것이 안전합니다.
해결 방법 일반 사용자로 Minikube 실행: root가 아닌 일반 사용자 계정에서 minikube를 실행하세요. Podman이 rootless로 설치되어 있어야 하며, 필요하다면 sudo 권한 없이 podman 명령어를 실행할 수 있도록 설정해야 합니다.
root로 실행해야 할 특별한 이유가 있다면: 정말로 root 권한이 필요하다면 –force 옵션을 추가하여 강제로 실행할 수 있습니다. 하지만 이는 권장되지 않으며, 보안상 위험을 감수해야 합니다.
minikube config set rootless true
minikube start --driver=podman --container-runtime=containerd