이미지 기반 애플리케이션을 사용하고 있습니다 docker.io/library/mariadb:10.7
. 이미지를 추출하여 tarball에 저장할 수 있습니다.
podman pull \
docker.io/photoprism/photoprism:latest \
docker.io/library/mariadb:10.7
podman save \
-o images.tar \
docker.io/photoprism/photoprism:latest \
docker.io/library/mariadb:10.7
다음을 통해 다른 시스템에 오프라인으로 설치합니다 load
.
docker load -i images.tar
위 명령은 성공적으로 실행되었으며 다음을 통해 이미지를 볼 수 있습니다 podman images
.
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/photoprism/photoprism latest 3bd51d37096b 4 days ago 1.33 GB
docker.io/library/mariadb 10.7 3bd51d37096b 4 days ago 1.33 GB
docker-compose.yml
via를 통해 시작한다고 해서 docker-compose up -d
즉시 명백한 오류가 발생하지는 않습니다. 하지만 journalctl -f
mariadb 컨테이너를 시작하고 다시 시작하려고 하면 끝없는 오류 루프가 표시됩니다.
container init (image=docker.io/library/mariadb:10.7...
container start(image=docker.io/library/mariadb:10.7...
container died (image=docker.io/library/mariadb:10.7,...
container restart(image=docker.io/library/mariadb:10.7,...
container init(image=docker.io/library/mariadb:10.7,...
#... and so on
docker-compose pull
이제 이것이 중요합니다. /를 통해 직접 온라인으로 이미지를 추출합니다 podman pull
. 그렇지 않으면 위의 단계를 유지합니다. 동일한 시스템 내에서만 작동합니다. 잘 작동합니다!
podman save
podman load
그래서 다른 컴퓨터(동일 아키텍처, Fedora)에서는 문제가 될 것 같습니다 .
읽다이 문제나는 노력했다
podman unshare podman load -i images.tar
성공하지 못했습니다.
마지막 참고 사항: Podman은 중요한 경우 사용자 공간에서 실행됩니다.
export DOCKER_HOST="unix://$XDG_RUNTIME_DIR/podman/podman.sock
systemctl --user enable --now podman.socket
이 문제를 추가로 디버깅하려면 어떻게 해야 합니까? 가능한 원인(사용자 공간 권한 등)과 적절한 해결 방법은 무엇입니까?
답변1
-m
추가 조사 후: tarball에 여러 이미지를 저장할 때 이 플래그를 추가해야 합니다.
podman save -m -o images.tar \
docker.io/photoprism/photoprism:latest \
docker.io/library/mariadb:10.7
-m, --multi-image-archive
추가 인수를 레이블 대신 이미지로 해석하고 다중 이미지 아카이브를 생성합니다(docker-archive만 해당)