서버에서 가끔 브라우저를(GUI) 실행하고 싶을때가 있다.
보통은 실험 적인 환경이나 proxy가 필요한 경우에 사용할 수 있겠다.
mobaxterm 을 이용한 방법은 너무 느리기 때문에 찾다보니 docker를 이용한 방법으로 하면 굉장히 빠른 속도로 사용이 가능 했다.
아래는 docker를 이용해서 서버에서 브라우져를 실행하는 방법이다. (Synology 나스에서도 경로만 맞추면/volume1/docker/xxxxx
잘 된다.)
출처: https://github.com/jlesage/docker-firefox
1 2 3 4 5 |
~]# docker pull jlesage/firefox ~]# docker run --rm -d --name=firefox -p 5800:5800 \ -e TZ=Asia/Seoul -e ENABLE_CJK_FONT=1 -e LANG=ko_KR.utf8 \ -v /docker/appdata/firefox:/config:rw \ jlesage/firefox |
명령어 실행 후 호스트서버에 /docker/appdata/firefox
가 자동생성 되고 설정 등이 저장 된다.
클라이언트PC 브라우저에서 http://서버IP:5800
으로 접속을 하면 아래와 같이 브라우저 안에 브라우저가 나온다.
웹접속을 통한 브라우저이다 보니 몇가지 제한 사항이 있다.
- 한글 입력이 되지 않는다.
- 붙여넣기(ctrl+v)가 자유롭지 않다.
- 사운드 출력을 위한 옵션은 있지만 서버에서 출력이 된다. (즉 자신의 브라우져로 소리는 들을 수 없다.)
WEB_AUDIO=1 옵션이 있지만 잘 작동하지 않았다. - 여러 클라이언트 접속시 하나의 세션이 열린다.(다른 클라이언트의 입력 또는 마우스 움직임 등도 보인다.)
한글 입력 및 붙여넣기 부분은 다음과 같이 진행 한다.
- 화면 왼쪽의 … 을 눌러서 레이어 팝업의 Clipboard 의 텍스트 입력창에 텍스트 입력을 한다.(여기서는 한글 입력이 잘된다.)
- 이후 입력창에 붙여넣기(CTRL + V) 를 한다.
계정 동기화 혹은 사이트 로그인 등을 할 경우 실행중인 Container 를 종료 하거나 로그 아웃이 필수다.
그냥 브라우저가 열려 있는 판정이기 때문에 다른 사람이 들어올 경우 로그인한 사이트의 로그인 탈취를 당할 수 있다.