방금 AlmaLinux 9(Red Hat 9 클론)를 설치하고 RH9의 새로운 표준인 podman을 사용하여 컨테이너를 설정했습니다. 온라인의 몇 가지 지침에 따라 아래와 같이 컨테이너를 성공적으로 다운로드하고 실행했습니다.
docker run -d \
--name homeassistant \
--privileged \
--restart=unless-stopped \
-e TZ=MY_TIME_ZONE \
-v /PATH_TO_YOUR_CONFIG:/config \
--network=host \
ghcr.io/home-assistant/home-assistant:stable
실행 중인지 확인할 수 있으므로 이제 부팅 시 "homeassistant" 컨테이너를 시작하도록 systemd 서비스 파일을 설정하려고 합니다. 컨테이너 이미지 파일을 찾으려고 했으나 찾을 수 없습니다! /etc/containers/storage.conf에 나열된 위치를 확인했는데 나열되어 있습니다.
runroot = "/run/containers/storage"
graphroot = "/var/lib/containers/storage"
그러나 이들 중 어느 것도 실행 중인 컨테이너를 포함하지 않습니다(사실 /var/lib/containers에는 스토리지 하위 디렉터리도 포함되어 있지 않습니다). 그러면 내 docker 명령으로 다운로드된 컨테이너는 어디에 있나요?
업데이트: 임시 사용자로 위 명령을 실행 중이며 임시 사용자(hass)에서 루트 사용자로 컨테이너를 이동하고 싶습니다. 파일을 옮겨야겠다고 생각했어요. (그러나 기꺼이 삭제하고 다시 다운로드할 수도 있습니다.) 초보자로서 이 컨테이너 파일/이미지/디렉토리가 어디에 있는지 알고 싶습니다.
내 목표는 그림과 같이 시스템 파일을 만드는 것입니다여기나는 그것을 루트로 실행하면 삶이 더 쉬워질 것이라고 생각합니다(적어도 제가 배우는 동안에는). 따라서 컨테이너 이미지를 다른 사용자에게 이동해야 합니다.
설치된 컨테이너를 나열하는 방법, 이동(새 사용자로), 삭제 등의 방법을 모르겠습니다. "podmas ps -a"는 실행 중인 컨테이너를 나열하지만 상위 수준 정보만 나열합니다.
답변1
Podman은 컨테이너를 실행하는 사용자 ~/.local/share/containers/
의 홈 디렉터리 에 컨테이너 관련 파일을 저장합니다 .~
귀하의 시나리오에서는 해당 디렉터리를 루트의 홈 디렉터리에 복사하여 다운로드 시간을 절약할 수 있습니다.
sudo mkdir -p /root/.local/share
sudo cp -a ~/.local/share/containers /root/.local/share
podman pull
하지만 모든 것이 올바르게 설정되었는지 확인하려면 계속 실행해야 합니다 .