Docker에서 GUI 애플리케이션을 실행하는 방법은 무엇입니까?

Docker에서 GUI 애플리케이션을 실행하는 방법은 무엇입니까?

아래와 같이 Parrot OS Docker 컨테이너에 Packet Tracer를 설치하려고 합니다.이것튜토리얼과 내 것도커파일이제 다음과 같습니다(테스트용).

FROM parrotsec/core
COPY PacketTracer_731_amd64.deb /root/PacketTracer_731_amd64.deb
RUN apt-get install -y /root/PacketTracer_731_amd64.deb

내가 명령을 실행할 때

docker build -t gparrot .

다음 오류가 발생합니다.

Sending build context to Docker daemon  181.1MB
Step 1/3 : FROM parrotsec/core
 ---> 167d5a59b3ce
Step 2/3 : COPY PacketTracer_731_amd64.deb /root/PacketTracer_731_amd64.deb
 ---> Using cache
 ---> 1df7860c2821
Step 3/3 : RUN apt-get install -y /root/PacketTracer_731_amd64.deb
 ---> Running in 2bbb80e41fd9

WARNING: apt does not have a stable CLI interface. Use with caution in scripts.

Reading package lists...
Building dependency tree...
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 packettracer : Depends: sudo but it is not installable
                Depends: dialog but it is not installable
                Depends: xdg-utils but it is not installable
                Depends: gtk-update-icon-cache but it is not installable
                Depends: libgl1-mesa-glx but it is not installable
                Depends: libpulse0 but it is not installable
                Depends: libnss3 but it is not installable
                Depends: libxss1 but it is not installable
                Depends: libasound2 but it is not installable
                Depends: libxslt1.1 but it is not installable
                Depends: libxkbcommon-x11-0 but it is not installable
E: Unable to correct problems, you have held broken packages.
The command '/bin/sh -c apt-get install -y /root/PacketTracer_731_amd64.deb' returned a non-zero code: 100

문제가 무엇인지, 해결 방법을 알려주세요.

답변1

기본 parrotsec/core이미지는 X 디스플레이 서버를 제공하지 않습니다. 우분투 사용에 대한 가이드를 따르세요. .를 apt-get사용하여 진입점을 추가하고 Dockerfile에 필요한 포트를 노출하세요.

관련 정보