以下の手順で、Jupyter Notebook、MongoDBのコンテナを構築・実行します。
○構築方法
1. mysqlclientを追加したJupyter Notebookイメージの作成(Dockerfileがあるフォルダで実行)
docker build -t scipy-notebook-mongodb .
Dockerfile
FROM jupyter/scipy-notebook
ENV TZ=Asia/Tokyo
USER root
RUN pip install pymongo
USER $NB_UID
2. Jupyter NotebookとMongoDBコンテナの構築・実行(docker-compose.ymlがあるフォルダで実行)
docker-compose up -d
docker-compose.yml
version: "2"
services:
scipy-notebook:
image: scipy-notebook-mongodb
container_name: "scipy-notebook-mongodb"
volumes:
- "scipy-notebook-data:/home/jovyan/work"
ports:
- "8888:8888"
environment:
JUPYTER_TOKEN: jupyter
depends_on:
- db
db:
image: mongo:3.7-jessie
container_name: "mongodb"
volumes:
- "mongodb-data:/data/db"
- "mongodb-configdb:/data/configdb"
ports:
- 27017:27017
volumes:
mongodb-data:
driver: local
mongodb-configdb:
driver: local
scipy-notebook-data:
driver: local
※Jupyter Labを使用したい場合は、以下のようにenvironmentにJUPYTER_ENABLE_LAB: 1を追加します。
environment:
JUPYTER_TOKEN: jupyter
JUPYTER_ENABLE_LAB: 1
3.ブラウザから以下のURLにアクセス
http://<Dockerホスト名またはIP>:8888/?token=jupyter
〇動作確認用コード
import pymongo
client = pymongo.MongoClient('mongodb://db:27017/')
db = client.testdb
result = db.test.insert_one({"message_id":"100", "message":"helo world!"})
print(result)
for data in db.test.find():
print(data)
○Jupyter Notebookの画面
0 件のコメント:
コメントを投稿