ขึ้นอยู่กับ บทความนี้ และ อันนี้ ฉันรู้ว่าฉันสามารถเรียกใช้แอพ GUI จากภายในคอนเทนเนอร์นักเทียบท่า และฉันก็เรียกใช้ Firefox จากคอนเทนเนอร์ได้สำเร็จ และเห็นมันและโต้ตอบกับมันในสภาพแวดล้อมท้องถิ่นของฉัน ฉันจึงสร้างสิ่งนี้ขึ้นมา ไฟล์นักเทียบท่า
ในการรัน VS Code:
จาก Ubuntu: ล่าสุด
คนงาน / อุณหภูมิ
RUN apt-รับการปรับปรุง
RUN apt ติดตั้ง wget -y
RUN wget https://go.microsoft.com/fwlink/?LinkID=760868 -O vscode.deb
RUN ล
RUN apt install ./vscode.deb -y
RUN apt ติดตั้ง libxshmfence1 -y
RUN apt ติดตั้ง libasound2 -y
RUN apt ติดตั้ง firefox -y
CMD [ "รหัส", "--user-data-dir='~/.vscode-root" ]
#CMD ["/usr/bin/firefox"]
จากนั้นฉันก็สร้างมันขึ้นมาและติดแท็กมัน:
นักเทียบท่า build -t vscode_image
อย่างไรก็ตาม เมื่อฉันรันอิมเมจนี้โดยใช้คำสั่งต่อไปนี้ มันจะออกทันที:
นักเทียบท่าเรียกใช้ -it --net=host --env="DISPLAY" --volume="$HOME/.Xauthority:/root/.Xauthority:rw" vscode_image
และพิมพ์ไม่มีข้อผิดพลาด ฉันจะแก้ไขปัญหานี้ได้อย่างไร
อัปเดต:
หากคุณสลับสองบรรทัดสุดท้าย คุณจะเห็นว่า Firefox ปรากฏขึ้นจริง