跳转到主要内容

Jupyter:数据分析笔记本与 AI IDE

使用 Pigsty v2.7 自带的 Docker Compose 模板运行 Jupyter Lab,并访问 PostgreSQL。
使用 Pigsty v2.7 自带的 Docker Compose 模板运行 Jupyter Lab,并访问 PostgreSQL。

Pigsty v2.7 在 app/jupyter 中提供 Jupyter Docker Compose 模板。修改 app/jupyter/.env 中的镜像、端口与令牌后,创建数据目录并启动容器:

cd ~/pigsty/app/jupyter
make dir up

默认配置使用 jupyter/minimal-notebook:latest,监听 8888 端口,令牌为 pigsty。可访问 http://lab.pigstyhttp://10.10.10.10:8888

数据目录

模板将 /data/jupyter 挂载到容器内的 /home/jovyan/work,并要求目录 属主为 1000:100

make dir   # mkdir -p /data/jupyter; chown -R 1000:100 /data/jupyter

该行为对应 v2.7.0 标签中的 app/jupyter/docker-compose.ymlapp/jupyter/Makefile

访问 PostgreSQL

可在 Jupyter 终端中安装 PostgreSQL Python 驱动:

pip install psycopg2-binary psycopg2

然后从 Notebook 建立连接:

import psycopg2

conn = psycopg2.connect(
    "postgres://dbuser_dba:[email protected]:5432/meta"
)
cursor = conn.cursor()
cursor.execute("SELECT * FROM pg_stat_activity")
rows = cursor.fetchall()

Makefile 命令

make up         # 使用 Docker Compose 启动 Jupyter
make dir        # 创建 /data/jupyter 并设置属主
make run        # 使用 docker run 启动 Jupyter
make view       # 打印访问地址
make log        # 查看容器日志
make info       # 使用 jq 检查容器
make stop       # 停止容器
make clean      # 删除容器
make pull       # 拉取镜像
make rmi        # 删除镜像
make save       # 保存镜像到 /tmp/docker/jupyter.tgz
make load       # 从 /tmp/docker/jupyter.tgz 载入镜像

v2.7.0 已不再包含旧版 infra-jupyter.yml 剧本与 jupyter_usernamejupyter_passwordjupyter_domain 参数;这些属于 早期版本,不能用于本分支。