Docker로 시작한 JupyterLab에서 vim 키 바인딩 사용

개요



지난번 Jupyter Notebook에서 vim의 키 바인딩을 사용할 수 있도록 했습니다만,
JupyterLab의 존재를 완전히 잊었기 때문에 Docker에서 JupyterLab을 시작하여 vim의 키 바인딩을 사용할 수있는 방법을 요약했습니다.

참고 : Docker로 시작한 Jupyter Notebook에서 vim 키 바인딩 사용

Jupyter Notebook과 JupyterLab의 차이



Jupyter notebook의 후계기가 JupyterLab가 되어 있어 기본적으로 할 수 있는 것은 어느쪽이든 동일합니다만, JupyterLab 쪽이 고기능이 되어 있습니다.
Jupyter notebook의 개발은 일단 종료되어 앞으로는 JupyterLab로 대체될 것 같습니다.

환경





버전


Mac
10.15.3

도커
19.03.4

docker-compose
1.24.1


환경 구축 절차



Dockerfile과 docker-compose를 사용하여 vim의 키 바인딩을 사용할 수있는 JupyterLab을 시작합니다.
※이하 파일은 GitHub에도 정리하고 있으므로 참고해 주십시오.
htps : // 기주 b. 코 m / 히카루 t / Data-S Shiense

1. notebook 저장을 위한 디렉토리 생성
$ mkdir notebooks

2. Dockerfile 만들기

Dockerfile
FROM jupyter/datascience-notebook
USER root

RUN pip install jupyterlab==1.0
RUN jupyter serverextension enable --py jupyterlab
RUN jupyter labextension install jupyterlab_vim

EXPOSE 10000
CMD ["bash"]

jupyterlab_vimjupyterlab 1.0 밖에 대응하지 않으므로 버전을 지정하여 설치합니다.
jupyterlab-vim : htps : // 기주 b. 코 m / jwk

3. docker-compose.yml 만들기

docker-compose.yml
version: '3'
services:
  data-science:
    restart: always
    build: .
    container_name: 'data-science'
    ports:
      - "10000:10000"
    working_dir: '/root/'
    tty: true
    volumes:
        - ./notebooks:/root/notebooks/

4. 컨테이너 빌드
$ docker-compose up -d --build

5. 컨테이너에 로그인
$ docker-compose exec data-science bash

6. Jupyter Notebook 시작
/root# jupyter lab --port 10000 --allow-root

나타나는 http://127.0.0.1:10000/?token=xxxxxxxxxxxxxxxx로 이동합니다.

Jupyter Notebook 때와 같이 설정 변경할 필요도 없고, 그대로의 상태에서 notebook상에서 vim을 사용할 수 있게 됩니다


마지막으로



JupyterLab이 Jupyter Notebook보다 느낌 설정이 편했습니다!
(이번에도 유저를 모두 root로 해 버렸으므로 그 근처는 바꾸는 것이 좋을지도요...)
단지 jupyterlab-vim의 빌드가 엄청 느린 것이 신경이 쓰였지만, 향후 개선되면 기쁘겠다고 생각합니다.

참고
  • JupyterLab의 스즈메
  • Docker로 JupyterLab 빌드
  • jupyter lab - jupyterlab-vim 설치 오류를 해결하는 방법
  • 좋은 웹페이지 즐겨찾기