16
Naver Labs 1

docker-based remote desktop

Embed Size (px)

Citation preview

Page 1: docker-based remote desktop

Naver Labs 1

Page 2: docker-based remote desktop

Remote Virtual Desktopdocker-based

Naver Labs 2

Page 3: docker-based remote desktop

Presenter• 자바 플랫폼 개발자

• Naver Labs

• 이형규

• https://github.com/naver/lucy-xss-filter - 홍보용

Naver Labs 3

Page 4: docker-based remote desktop

Contents• Overview

• Explain Dockerfile

• Explain Script

• Demo

• Goal

Naver Labs 4

Page 5: docker-based remote desktop

Overview

Naver Labs 5

Page 6: docker-based remote desktop

Overview

• xvnc, xrdp 활용

• 클라이언트 접속툴

• volume 관리

Naver Labs 6

Page 7: docker-based remote desktop

DockerfileRUN apt-get install -y language-pack-ko-baseRUN apt-get install -y vnc4serverRUN apt-get install -y xrdpRUN apt-get install -y xfce4RUN apt-get install -y xubuntu-icon-theme RUN apt-get install -y ttf-baekmukRUN apt-get install -y firefox RUN apt-get install -y -q supervisor

ADD bin/rzdesk_adduser.sh /usr/bin/rzdesk_adduserADD bin/rzdesk_passwd.sh /usr/bin/rzdesk_passwdADD bin/rzdesk_start.sh /usr/bin/rzdesk_startADD conf/supervisord.conf /etc/supervisor/conf.d/supervisord.conf

Naver Labs 7

Page 8: docker-based remote desktop

Script• build.sh#!/bin/sh

if [ ! -e "etc" ] ; then mkdir etcfirm -f etc/*

if [ ! -e "doc" ] ; then mkdir docfi

docker build -t rzrdp .

Naver Labs 8

Page 9: docker-based remote desktop

Script• addUser.sh#!/bin/sh

if [ $# -ne 1 ]; then echo "usage : $0 userid " exit 1fi#echo $*

if [ ! -e $PWD/doc ]; then mkdir docfi

if [ ! -e $PWD/etc ]; then mkdir etcfi

docker run --rm -i -t \-v $PWD/doc:/home/$1/ \-v $PWD/etc/:/etc_bak/ \ rzrdp:latest /usr/bin/rzdesk_adduser $1

Naver Labs 9

Page 10: docker-based remote desktop

Script• run.sh#!/bin/sh

if [ ! $# -ge 1 ]; then echo "usage : $0 userid" exit 1fi

if [ ! -e $PWD/doc -o ! -e $PWD/etc ] ; then echo "no doc folder" exit 1fi

docker run -d -p 13389:3389 \ -v $PWD/doc:/home/$1/\ -v $PWD/etc/:/etc_bak\ rzrdp:latest /usr/bin/rzdesk_start

Naver Labs 10

Page 11: docker-based remote desktop

Demo$ ./build.sh$ ./adduser.sh USERID$ ./run.sh USERID

Naver Labs 11

Page 12: docker-based remote desktop

Naver Labs 12

Page 13: docker-based remote desktop

Goal• 계정 관리 ?

• 이미지 관리 ?

• OS 별 클라이언트 접속툴 ?

• 산출물 관리 ?

Naver Labs 13

Page 14: docker-based remote desktop

Goal

Naver Labs 14

Page 15: docker-based remote desktop

Field• 컴퓨터 교육 실습장 • 프로젝트별 개발환경 • 언어별 스터디 환경• 보안에 민감한 서비스 담당자중국의 ctrip 여행사에서는 만 여명의 직원에게 오픈스택 기반의 VDI를 제공해 하루에 20만 통화량을 처리한다고 합니다.

Naver Labs 15

Page 16: docker-based remote desktop

The End

Naver Labs 16