DSTBX2023(5)

Author

SEOYEON CHOI

Published

January 10, 2024

실습64: docker로 Rstudio 실행하기(실습실 컴퓨터)

ref: https://rocker-project.org/

- 다커실행파일 다운로드

- docker 이미지 다운로드

방법1

docker pull rocker/rstudio

방법2

  • 사실 잘 몰라요 ㅎㅎ

- 다운받은 이미지 확인하기

방법1

docker images

방법2

  • GUI

- 이미지에서 컨테이너생성 (컨테이너는 인스턴스라고 생각하자..)

방법1

docker run -ti -e PASSWORD="jbnu" -p 8787:8787 rocker/rstudio

방법2

  • GUI
Note

rocker/rstudio

이게 이미지

비밀번호는 큰 따옴표로 하거나 아예 안 쓰기

Tip

이미지는 python의 class

컨테이너는 python의 함수

Tip

docker run: Docker 컨테이너를 실행하는 명령어.

-ti: 터미널 상호작용을 가능하게 하는 옵션으로, 이 옵션을 사용하면 컨테이너가 실행되면서 사용자와 상호작용할 수 있습니다.

-e PASSWORD=“jbnu”: 컨테이너 내부에서 사용할 RStudio Server의 비밀번호를 설정하는 옵션입니다. 이 예제에서는 “jbnu”로 비밀번호를 설정했습니다.

-p 8787:8787: 호스트 머신의 8787 포트를 컨테이너의 8787 포트와 연결하는 옵션입니다. RStudio Server는 기본적으로 8787 포트에서 실행됩니다.

rocker/rstudio: Docker 이미지의 이름입니다. rocker는 R언어 및 RStudio를 설치하고 설정한 이미지입니다.

Tip

docker ps -a

실행했던 ( 과거의 히스토리까지) 모든 결과 보여줌

docker ps

현재 실행하는 컨테이너 보여줌

docker images

현재 있는 이미지 보여줌

Tip

이미지의 컨테이너에 들어가서 r 작업하면

컨테이너 꺼도 다시 시작하면 히스토리가 남아있음

–> 이 말은 컨테이너 끄고 컨테이너 삭제해야 이미지도 삭제할 수 있다는 뜻

Note

어떻게 돌아가느냐 - 컨테이너에 패키지 다 설치해서 그걸 share 해 그 share 한 공간에서 추가 패키지 설치하든 알아서 사용 가능

- Rstudio 사용

실습65: docker로 ubuntu 실행하기(실습실 컴퓨터)

- 우분투 이미지 다운로드

docker pull ubuntu

- 실행

docker run -ti -d -t ubuntu /bin/bash
docker exec -ti {넣고 싶은 name 쓰기} bash 

실습65: docker로 ubuntu 실행하기 (183컴퓨터)

- 우분투안에서 우분투 실행

docker run -ti -d -t -p ?????:????? --name guebin ubuntu /bin/bash
docker exec -ti guebin bash 

- 아래를 수행

passwd root
apt update 
apt install gcc
apt install build-essential
apt install vim 

실습66: 코드스페이스 사용하기

- 아래를 이용하여 코드스페이스 설치

apt-get install curl
curl -Lk 'https://code.visualstudio.com/sha/download?build=stable&os=cli-alpine-x64' --output vscode_cli.tar.gz
tar -xf vscode_cli.tar.gz

- 아래를 이용하여 초기설정

./code tunnel 
  • 컴퓨터 이름 잘 써야해요…
  • 외워야 하는 이름이에요..
Note

두 개 선택하라고 나오는데 여기서 Github Account 선택하고 터미널에서 나온 코드 입력

- 코드스페이스 평생켜놓기

nohup ./code tunnel > /dev/null 2>&1 &

- 코드스페이스의 장점

  • 별도의 포트를 먹지 않는다.
  • 하나의 창에서 모든 가상환경을 동시에 이용할 수 있다. <– 제가 이거때문에 씁니당..
  • 보안접속이 가능하다.

실습67: Rstudio 사용하기

- 아래를 이용하여 Rstudio를 설치 (base환경인지 r환경인지는 무의미)

sudo apt-get install gdebi-core
wget https://download2.rstudio.org/server/jammy/amd64/rstudio-server-2022.12.0-353-amd64.deb
sudo gdebi rstudio-server-2022.12.0-353-amd64.deb

- grst가 만든 rstudio-server-conda를 클론

git clone https://github.com/grst/rstudio-server-conda.git
Note

local 파일 들어가서

start_rstudio_server.shvi로 보기

--www-port=$1 \

--www-port=8888

원하는 주소로 설정

그 밑에

--auth-minimum-user-id=0

추가

- 내용을 수정

{.bash filename= "~/rstudio-server-conda/local/start_rstudio_server.sh"} ... blalba ... /usr/lib/rstudio-server/bin/rserver --server-daemonize=0 \ --www-port=????? \ ### <--- 여기 수정!!!!! --auth-minimum-user-id=0 \ ### <--- 여기 추가!!!!! --secure-cookie-key-file=$COOKIE_KEY_PATH \ --server-pid-file="$CWD/rstudio-server.pid" \ --server-data-dir="$CWD/rstudio-server" \ --rsession-which-r=$(which R) \ --rsession-ld-library-path=$CONDA_PREFIX/lib \ --rsession-path="$CWD/rsession.sh" \ --server-user $USER \ --database-config-file "$CWD/database.conf" \ $REVOCATION_LIST_PAR

- start_rstudio_server.sh를 실행