でJupyterLab環境を作る - Streamlit編
Streamlitを表示させながらJupyterLabでコードを書きたいと思い、
Dockerで環境を作成しました。
前提の話はこちらの記事で書いています。
基本的には上記の内容とほぼ変わらないですが、
docker-compose.ymlでimageを2つ作成している点がことなります。
フォルダ構成
Dockerfile
docker-compose.yml
requirements.txt
src
└ app.py
Dockerfile
FROM python:3
COPY requirements.txt .
RUN pip3 install --upgrade pip && \
pip3 install --no-cache-dir -r requirements.txt && \
pip3 install jupyterlab
WORKDIR /src
COPY /src /src
requirements.txt
streamlit
pandas
app.py
Dockerfile
docker-compose.yml
requirements.txt
src
└ app.py
FROM python:3
COPY requirements.txt .
RUN pip3 install --upgrade pip && \
pip3 install --no-cache-dir -r requirements.txt && \
pip3 install jupyterlab
WORKDIR /src
COPY /src /src
requirements.txt
streamlit
pandas
app.py
streamlit
pandas
最初は空でも問題ないです。
import streamlit as st
st.write('Hello Streamlit')
docker-compose.yml
version: '3'
services:
jupyterlab:
restart: always
build:
context: .
dockerfile: Dockerfile
container_name: jupyterlab
working_dir: '/src'
tty: true
volumes:
- ./src:/src
ports:
- '8080:8080'
command: jupyter-lab --ip 0.0.0.0 --port=8080 --allow-root --no-browser --NotebookApp.token=''
stremlit:
restart: always
build:
context: .
dockerfile: Dockerfile
container_name: stremlit
working_dir: '/src'
tty: true
volumes:
- ./src:/src
ports:
- '8501:8501'
command: streamlit run app.py
version: '3'
services:
jupyterlab:
restart: always
build:
context: .
dockerfile: Dockerfile
container_name: jupyterlab
working_dir: '/src'
tty: true
volumes:
- ./src:/src
ports:
- '8080:8080'
command: jupyter-lab --ip 0.0.0.0 --port=8080 --allow-root --no-browser --NotebookApp.token=''
stremlit:
restart: always
build:
context: .
dockerfile: Dockerfile
container_name: stremlit
working_dir: '/src'
tty: true
volumes:
- ./src:/src
ports:
- '8501:8501'
command: streamlit run app.py
jupyterlabの方は--NotebookApp.token=''
オプションを追加してトークンの入力なしで開けるようにしました。
streamlitではworkind_dir
で指定したフォルダにapp.py
があることが重要です。
これらを用意してdockerコマンドを実行
docker compose up
localhost:8080
でJupyterLab
localhost:8501
でStreamlitが表示されます。
JupyterLabの拡張機能を入れるとimageの作成に時間がかかるので
省略していますが、実際には入れて環境構築します。
その話はこちらの記事でまとめています。
Author And Source
この問題について(でJupyterLab環境を作る - Streamlit編), 我々は、より多くの情報をここで見つけました https://qiita.com/plumfield56/items/809c0a514ec90fa26941著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .