우분투의 그래픽은 시스템이 아니다. 프로그램이다.
그래서 리눅스 서버버전을 실행하면 gui가 없었던 것입니다.
-출처: https://medium.com/@SaravSun/running-gui-applications-inside-docker-containers-83d65c0db110
우분투는 `Xorg`라는 그래픽 프로그램을 이용한다. 즉, 얘가 있어야 그래픽을 띄워줄 수 있습니다.
그럼 도커에서 그래픽을 띄워주려면? 호스트의 자원을 공유하면 된다.
호스트의 Xorg를 컨테이너가 이용하면 된다는 말~
실행옵션을 추가해주면 컨테이너에서도 그래픽을 볼 수 있다.
도커를 gui로 실행하는 방법은 두 가지가 있다.
1. VNC를 이용하거나
2. 단순히 XServer를 공유
여기서 Xserver를 공유하는 방법은 아래와 같습니다.
XServer 공유하기
host의 XServer를 볼륨형태로 컨테이너와 공유하자. DISPLAY 환경 변수도 전달해줘야 한다.
유닉스 도메인 소켓을 이용하여 host의 XServer와 도커 컨테이너를 연결한다. readonly옵션을 준다.
XServer소켓은 `/tmp/.X11-unix`에 존재한다.
1 2 |
--volume /tmp/.X11-unix:/tmp/.X11-unix:ro -e DISPLAY=unix$DISPLAY |
호스트에서 도커가 xserver와 통신할 수 있도록 설정한다. 다른 터미널을 열고 작업한다.
1 | $ xhost +local:docker |
이제 GUI로 도커 이미지를 실행할 수 있다.
(출처: https://medium.com/@SaravSun/running-gui-applications-inside-docker-containers-83d65c0db110 )
그럼,
공유합니다.
'개발 이야기 > 리눅스 개발' 카테고리의 다른 글
이더넷케이블로 직결한 두 컴 사이에 ping주고받기 (0) | 2021.10.06 |
---|---|
리눅스 - 한글 입력 설정 (0) | 2021.10.03 |
리눅스 - nmcli 명령어 사용법 - ft.와이파이 연결 (0) | 2021.10.01 |
우분투 스왑 파일(swapfile) 생성 및 삭제 (0) | 2021.09.27 |
리눅스 터미네이터/Terminator 단축키 (0) | 2021.09.27 |