构建 BlocklyJupyter 环境

注:本文中所有的命令均以 ‘#’ 开头,'#'是不用输入的

构建服务器环境(Linux)

  1. 由于需要支持TensorFlow,利用google提供的Docker

    参考: 构建tensorfrom环境

    按照方案二,安装Docker镜像,然后启动Docker,在Docker中继续操作

    本处采用的docker镜像是 tensorflow/tensorflow:latest

  2. 安装nodejs

    因为使用了typescript,所以要安装nodejs, 参考:ubuntu快速安装最新版nodejs,只需2步

    note: 是在 docker容器中安装,而不是在服务器系统上安装

    # curl -sL https://deb.nodesource.com/setup_14.x | bash -
    # apt-get install -y nodejs

    nodejs 版本 v14.17.0
    npm 版本 6.14.13

    可以考虑使用国内npm源, 参考:npm安装慢的俩种方法

    # npm config set registry http://registry.npm.taobao.org
    # npm config set registry https://mirrors.tencent.com/npm/
  3. 安装typescript

    note: 是在 docker容器中安装,而不是在服务器系统上安装

    # npm install typescript -g
  4. 安装git
    tensorflow/tensorflow:latest默认没有git 需要安装

    # apt-get install git
  5. 下载BlocklyJupyter

    # git clone git@github.com:ChrisJaunes/blockly_teaching.git
  6. 进入BlocklyJupyter

    # cd blockly_teaching/BlocklyJupyter
  7. 安装jupyter、jupyterlab等库
    目录下有一个requirements.txt的文件,这个文件定义了所需要的jupyter等lib及其版本

    # pip install -r requirements.txt --default-timeout=100 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

    由于使用root账户,有些包无法自动安装,可以手动安装。

    不过通常安装jupyter和jupyterlab就可以了,其余根据需要安装,如果需要多用户的,需要安装jupyterhub

  8. npm安装

    # npm init
    # npm install --save-dev
    # npm run build
  9. 运行
    单用户启动

    # python -m main --allow-root --ip=0.0.0.0

    多用户启动
    在 BlocklyJupyter 目录下面创建 config 目录,然后创建 jupyterhub_config.py 文件

    # cd config
    # jupyterhub -f jupyterhub_config.py

构建本机测试环境(windows)

  1. 由于需要支持TensorFlow,利用google提供的Docker

    参考: 构建tensorfrom环境

    本处采用的docker镜像是 tensorflow/tensorflow:latest

  2. 下载BlocklyJupyter

    如果选择在docker容器中存储,同上文

    如果选择在windows上存储,从 github 上 下载 BlocklyJupyter

  3. 映射文件到容器

    如果BlocklyJuptyter在windows上存储, 可以映射文件到容器,假设windows上的路径F:/blockly_teaching,映射到docker容器中的位置为/root/blockly_teaching

    容器创建命令(映射文件,映射端口,可交互)

    # docker run -it -v F:/blockly_teaching:/data/blockly_teaching -p 8888:8888 tensorflow/tensorflow /bin/bash

    如果BlocklyJuptyter在docker容器中存储,但想在windows中编辑,使用VSCode的remote wsl插件

  4. 安装nodejs、typescript、git

    同上文,在docker容器中安装而不是在windows上安装

  5. 安装jupyter、jupyterlab等库

    同上文,在docker容器中安装,而不是在windows中安装

  6. npm安装

    同上文,在docker容器中安装,而不是在windows中安装

  7. 运行
    同上文,在docker容器中运行,而不是在windows中运行