LXD 컨테이너 내부에 브라우저를 설치하고 호스트 운영 체제에서 실행합니다.

LXD 컨테이너 내부에 브라우저를 설치하고 호스트 운영 체제에서 실행합니다.

LXD 컨테이너(Voidlinux - 가급적이면 linuxMint) 내에 Brave 브라우저를 설치하려고 합니다. 호스트 OS 내에서 애플리케이션에 대한 바로가기를 만들고 다른 Linux 애플리케이션처럼 실행하려고 하지만 컨테이너 내에서 실행됩니다. 우분투가 아닌 호스트 OS에서 디스플레이 섹션이나 lxc 프로필을 구성하는 방법을 잘 모르겠습니다.

성공하지 못한 채 다음 튜토리얼을 시도했습니다.

https://blog.simos.info/running-x11-software-in-lxd-containers/

예를 들어,

environment.PULSE_SERVER: unix:/home/ubuntu/pulse-native
connect: unix:/run/user/1000/pulse/native
listen: unix:/home/ubuntu/pulse-native

젠투 배포판에서 무엇을 대체할 수 있나요 ubuntu?user

lxc exec mycontainer -- sudo --user ubuntu --login 

이는 voidlinux 컨테이너에서는 작동하지 않습니다.

답변1

클릭할 수 있는 링크는 없지만 컨테이너가 X11 애플리케이션을 실행하려면 X 서버의 Unix 도메인 소켓을 컨테이너에 넣어야 합니다.

그래서,

  1. 호스트 X11 소켓을 컨테이너에 복사하도록 lxc 구성 구성

  2. 소켓이 추상 Unix 소켓인 경우 Unix 도메인 버전을 사용하도록 X를 구성합니다.

  3. 소켓을 /tmp 이외의 디렉터리에 복사하면 lxc 복사 작업 후 /tmp 디렉터리가 완전히 지워지므로 소켓이 사라집니다.

  4. 소켓을 X11이 일반적으로 배치하는 /tmp 디렉토리로 이동합니다.

  5. 사용자 셸에서 DISPLAY=:0 내보내기

이는 파일 시스템만 제공하고 호스트의 나머지 부분과 프로세스를 격리할 뿐이지만 X11 자체는 응용 프로그램과 데스크톱 보기 간의 분리를 제공하지 않는다는 점을 알아야 합니다.

관련 정보