Docker上のJupyterLabをVSCodeから操作する

Run cellを使ってみたいけれど、ローカルにAnacondaを入れるのがめんどくさかったため。

DockerでJupyterの環境を作る

Dockerでscipy notebookを使う。 datascience-notebookでもいい。

docker pull jupyter/scipy-notebook

次にdocker-compose.ymlを書く。

version: "3.7"
services:
  jupyterlab:
    build: .
    container_name: scipy-notebook
    environment:
      - JUPYTER_ENABLE_LAB=yes
    ports:
      - "8888:8888"
    volumes:
      - $(pwd):/home/jovyan
    command: start.sh jupyter lab --NotebookApp.token=''
docker-compose up --build

立ち上がったアドレスからjupyterLabに接続できる。

次回以降は

docker-compose start

でコンテナが起動できる

Docker開発環境にVScodeで接続

VScodeMicrosoftのRemote-Containersを入れる。

f:id:long5:20200603000051j:plain

VS CodeでDocker開発コンテナを便利に使おう - Qiita

↑の方が詳しく説明されています。

入れたら左下の隅にマークが出てくるので押す。

メニューが表示されるのでRemote-Containers: Open Folder in Containerを押してdocker-compose.ymlがあるディレクトリを選択。

次に出るメニューではFrom 'docker-compose.yml'を選択。

VSCodeが再起動し、Dockerコンテナに接続できる。

ファイルが多いが\home\jovyan以下にマウントしたファイルが表示される。

VSCodeでJupyterを使う

ExtensionからMicrosoftPythonとJupyterをそれぞれインストール。

installreloadになるので押すと再起動されて利用できるようになる。

pyファイルに#%%を追記するとRun cellを利用できます。