🕘
Dockerfileとdocker-compseを使ってanaconda3環境構築
いろいろ調べてやってみたけどうまいこと動いてくれなかったのでまた使うときのために。
1.Dockerfile、docker-compose.ymlを作る。
※拡張子なしでDockerfileという名前でファイルを作る。
ベースはcontinuumio/anaconda3を使う。
RUNは、continuumio/anaconda3の中に入ってない使いたいライブラリをインスコする。
したのはjupyterlabの設定(多分)
Dockerfile
FROM continuumio/anaconda3
RUN apt-get update && \
    apt-get install -y fonts-takao-gothic graphviz
ENV TZ=Asia/Tokyo
ENV TERM xterm    
RUN apt -y install nodejs npm
RUN pip install --upgrade pip && \
    pip install japanize_matplotlib &&\
    pip install graphviz pydotplus  #好きなの入れる。
RUN conda install pandas-profiling &&\
    conda install scikit-learn && \
    conda install -c conda-forge xgboost && \
    conda install -c conda-forge lightgbm && \
    conda install jupyter -y --quiet && \   
    mkdir -p /notebooks           #好きなの入れる。
WORKDIR /notebooks
docker-compose.yml
version: "3"
services:
  jupyter:
    build: .
    container_name: "hogehoge" #コンテナの名前を決める
    command:
     jupyter-lab --ip 0.0.0.0 --port=8888 --allow-root --no-browser --NotebookApp.token=''
    ports:
      - "8888:8888"
    working_dir: '/notebooks'
    tty: true
    volumes:
      - ./notebooks:/notebooks
これを適当なフォルダに入れておく。
2.anaconda3をいれる
docker hubからpullしてくる
docker pull continuumio/anaconda3
3.動かす
これで動かしてhttp://localhost:8888/lab にアクセスするとjupyterlabが表示される.
vscodeは(dev containersかな)拡張機能を入れて左下からattach to running containerでできた。vscodeでnotebooksフォルダを開くときフォルダを開くを押して検索窓に/を入れるとnotebooksが表示される。
docker compose up
まとめ
調べるといろんなやり方があり頭がこんがらがった。とりあえずこれが自分の妥協できるやりかたかな。また違った簡単なやり方を知りたい。。
参考
Discussion