[컴] podman 에서는 해당 계정에서 만든 container들은 해당 계정으로만 볼 수 있다

팟맨 / 포드맨 / 파드맨/ 왜 안보이나, / 왜 컨테이너가 안보이지 /

podman 에서는 해당 계정에서 만든 container들은 해당 계정으로만 볼 수 있다

update 2023-08-02: 자세한 내용은 rootless Podman 를 ‘sudo’, ‘su’ 로 사용하면 안되는 이유 를 보자

podman 에서는 해당 계정에서 만든 container들은 해당 계정으로만 볼 수 있다. 그래서 당연히 실행도 해당계정으로만 해야 한다. 그래서 만약 user1 로 만든 container는 다른 계정에서 sudo 등을 이용해서 실행할 수 없다.

그리고, root 도 non-root user가 실행한 container를 볼 수 없다.(ref. 1)

ref. 3 을 보면, 자세한 설명이 나온다. 여기서 간략하게 추려보면

  • podman 은 실행시점에 temp directory 가 필요한데 이 temp directory 로 /run/user/$UID 를 이용한다. 만약 이 directory 를 사용할 수 없다면, /tmp를 이용하게 된다. 그런데 이 결정은 podman 이 처음 run 할때 정해지고는 변경되지 않는다.
  • 이 directory 는 login 할 때 만들어진다. 그리고 logout 하면 지워진다.
  • 그런데 susudo를 이용하면 login session 이 만들어지지 않는다. 그래서 /run/user/$UID 가 없다.
  • root container 들은 괜찮다. 그들은 /run/user/$UID 대신에 /run을 사용하기 때문에.
  • 그래서 susudo를 이용해서 rootless container를 실행하는 것은 권장하지 않는다.
  • 그래서 첫 실행에 /tmp를 실행하도록 만들기도 한다. 그러나 이것도 문제는 있다. 이부분은 ref. 3 을 확인하자.

Reference

  1. podman cannot see all running containers - Stack Overflow
  2. podman - How to list rootless containers of ALL the users? - Stack Overflow
  3. Why can’t I use sudo with rootless Podman? | Enable Sysadmin

댓글 없음:

댓글 쓰기