Docker 컨테이너의 Jupyter Notebook을 VSCode Remote Development에서 편집

신약 Advent Calendar (DRY side) 6일째 기사

(컨테이너의) Jupyter Notebook에서 RDKit을 좋은 느낌으로 사용하고 싶습니다.



작년부터 올해에 걸쳐 창약 레이드 배틀 이라고 하는 창약 스크리닝 이벤트를 개최했을 때, 참가의 문턱을 낮추기 위해, 달인 @yamasakihrazi의 Docker-compose에서 창약 레이드 배틀 2018 용 Jupyter Notebook에서 액세스 할 수있는 화합물 데이터베이스 를 준비해 주었다. 수백만 화합물의 라이브러리를 간편하게 취급할 수 있는 매우 편리한 환경이다. 초보자도 즉시 컨테이너 환경에서 RDKit을 사용하기 시작할 수 있습니다. Docker for Windows를 사용하면 Windows에서도 실행 가능하다.

반면 올해 6월경 VSCode에 Remote Development 기능이 구현되어 컨테이너에 연결하여 개발할 수 있게 된 데다 10월에는 VSCode의 Jupyter 지원도 추가되었다. 즉, 컨테이너상의 Jupyter 환경에 호스트 OS측의 VSCode 로부터 연결하게 되었다. 위의 창약 용기 환경의 Jupyter Notebook도 VSCode에서 좋은 느낌으로 사용할 수 있다. 다만 첫견이라고 주저한 곳이 있으므로, 시작 방법을 간단히 정리해 둔다.

절차



1. 컨테이너 시작



razi의 Docker-compose에서 창약 레이드 배틀 2018 용 Jupyter Notebook에서 액세스 할 수있는 화합물 데이터베이스 환경이 설정되었을 때,

컨테이너를 시작한다. (창약 레이드용 해당 환경에 한하지 않고, Jupyter가 들어 있는 임의의 컨테이너로 읽어들여 받을 수 있다)

2. VSCode에서 컨테이너로 Remote Development 연결



왼쪽 Remote Explorer 아이콘에서

일어나는 컨테이너 선택

연결하다

연결하다


3. 컨테이너에 연결된 VSCode에 extension 설치



호스트 OS 상의 VSCode 본체에 Python 확장이 인스톨 되어 있어도, 컨테이너에 첨부해 기동한 VSCode 내에서는 그것은 인식되지 않기 때문에, 새롭게 인스톨 한다.

왼쪽 Extensions 아이콘에서

Python 확장을 새로 설치합니다.


다시 로드합니다.

들어갔다.

4. 컨테이너의 Jupyter에 연결



상기의 컨테이너 기동시에 자동적으로 일어나고 있는 Jupyter server 에 연결될까라고 생각하면 연결되지 않는다. (존재하지 않는 비밀번호 필요)

명령 팔레트에서,

URI 지정으로 Jupyter server를 지정한다. 여기서 주는 URI 는, 컨테이너내의 터미널에서 새롭게 jupyter notebook 를 시작해 버려, 그 URI 를 넣으면 접속할 수 있다.

그러면 컨테이너 내의 커널을 선택할 수 있게 되므로, 선택한다.

5. 사용해보기




보완도 효과가 있고, 좋은 느낌이 되었다!

좋은 웹페이지 즐겨찾기