728x90
반응형

docker Container에서 GUI firefox 실행을 해봅시다.

 

환경정보

ubuntu 20.04.5

docker 20.10.19

 

주의! 컨테이너 생성부터 모두 docker host의 GUI 데스크톱에서 진행해야 합니다.

 

1. GUI사용을 위한 컨테이너 생성

docker run -d -it -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY --name con_test ubuntu:focal

여기서 GUI와 관련하여 중요한 포인트는 -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=unix$DISPLAY 입니다.

--name con_test는 컨테이너명 지정한 것이고, ubuntu:focal은 ubuntu의 버전을 명시한 것입니다.

 

2. docker의 host에서 인증쿠키 확인

xauth list

참고로 GUI 연결 시 마다 인증쿠키가 변경됩니다. 

컨테이너 접속 전에 사용하기 위해 미리 복사해 둡시다.

 

반응형

 

3. 컨테이너에 접속 후 업데이트 및 필요한 패키지 설치

apt-get update -y
apt-get install xauth -y
apt-get install firefox -y

 

4. GUI 사용을 위해 인증쿠키 설정

xauth add 복사한인증쿠키

제대로 작성 했다면 에러가 나더라도 정상입니다.

 

5. firefox 실행

firefox

명령어를 입력하면 해당 컨테이너의 firefox가 GUI로 실행됩니다.

 

참고로 이 단계에서 겼었던 에러 2가지가 있습니다.

1) ubuntu 20.04.5 (focal)

Unable to init server: Broadway display type not supported: unix
Error: cannot open display: unix

CLI 모드에서 컨테이너를 생성한 경우입니다. GUI에서 생성해서 해결 되었습니다.

 

2) ubuntu 22.04.1

ommand '/usr/bin/firefox' requires the firefox snap to be installed.
Please install it with:

snap install firefox

이 에러는 짧게 나마 구글 검색을 해봤지만 만족스러운 답을 찾지 못했습니다.

 

* 참고한 글

 

Container 내에서 GUI Application(firefox, 계산기) 실행하기

<선결 조건> docker host를 반드시 GUI 버전으로 설치한다(Server with GUI 설치) container를 실행할 때도 GUI Desktop으로 액세스하여 Terminal을 띄워서 해야 한다 (즉, ssh로 접속하여 GUI Package를 실행해서는 안

cloudsns.wordpress.com

 

docker와 GUI 환경 연결

docker container에서 GUI 애플리케이션을 수행할 필요가 있는 경우가 많다. 이를테면 vscode를 실행시킨다던지, 심심하니까 xeyes를 실행시켜 놓는다던지.. 아래 설명한 방법을 사용하면 docker container가

driz2le.tistory.com

 

 

번외

.... 사실이건 지난 주말에 어떤 문제를 해결하기 위해 적용했던 겁니다만....

그 문제에는 전~혀 소용이 없더군요..... 하하핫.. 

그래도 하나 알았으니.. 위안을..

728x90
반응형

+ Recent posts