
Podman을 사용하여 컨테이너에 일부 소프트웨어를 구축했으며 호스트에서 바이너리를 실행하고 싶습니다. 바이너리는 내 호스트에 없는 일부 동적 라이브러리에 연결되어 있습니다. 나는 빠른 해키 솔루션이 내 호스트에 컨테이너의 파일 시스템을 마운트하고 거기에서 라이브러리에 대한 바이너리 모양을 갖는 것이라고 생각했습니다(예: 를 사용하여 LD_LIBRARY_PATH
).
내 호스트에서 컨테이너의 파일 시스템을 어떻게 마운트/확인할 수 있나요?
답변1
프로그램과 해당 종속성 라이브러리를 포함하는 사용자 정의 패키지를 작성합니다. rpm, deb, apk 등 무엇이든 가능합니다. rpm을 빌드하기 위한 모의와 같은 최소한의 chroot에서 이를 빌드합니다. 호스트에 설치합니다. 이와 같은 패키징은 링커를 변경할 필요가 없다는 점을 포함하여 장점이 있습니다.
해당 컨테이너 이미지를 정말로 사용하고 싶다면 다른 컨테이너의 기반으로 재사용하는 것이 더 자연스러울 것입니다.
예, 이미지를 어딘가에 마운트하고 관련 라이브러리를 /usr/local/lib64
. 그러나 이는 컨테이너(podman) 또는 샌드박스 애플리케이션(snap, flatpak)의 보안 이점 없이 비표준 유지 관리 절차를 사용하여 이 애플리케이션을 위한 별도의 스토리지로 인해 복잡성이 추가됩니다.