俗话说 “工欲善其事必先利其器”, 好的工具能让我们的工作事半功倍。
当我刚开始正式工作时就经常遇到一些需要跑脚本处理的一些内容,刚开始我都是将需要跑的脚本写好,然后push到git上,然后再到线上服务器中pull下来再执行。当某个地方有问题需要修改时就再次重复上述操作,如此繁琐的操作让人头大又无奈。直到我发现了神器jupyter!
- 环境配置
使用docker启动ubuntu:16.04 然后安装jupyter环境
- 准备环境
1、首先准备docker环境(略)
2、docker启动ubuntu
docker run -p 8888:8888 -ti ubuntu:16.04 /bash
3、安装pip
apt-get update
apt-get upgrade
apt-get install python-pip
pip install --upgrade pip
pip install jupyter
4、安装jupyter
pip install jupyter
5、设置密码
jupyter notebook password
按照提示输入密码
6、运行jupyter
jupyter notebook --ip=* --port=8888 --notebook_dir="/home" --allow-root
后续的参数都是一些配置。如果需要设置更多配置也可以通过配置文件。这里图方便就会命令行传入配置参数。
到了这里我们的jupyter就配置起来了。通过页面输入localhost:8888也可以访问页面了。不过此时的页面只能使用python的脚本。需要使用nodejs的脚本则需要配置更多内容。
- 配置nodejs
#配置node源
curl -sL https://deb.nodesource.com/setup_8.x -o nodesource_setup.sh
bash nodesource_setup.sh
# 如果nodejs和npm没安装可以先安装下
apt-get install nodejs npm
# 把ijavascript安装到全局环境中
npm install -g ijavascript
#如果执行失败,则执行下面的命令
npm --unsafe-perm install -g ijavascript
# 安装
ijsinstall
然后重新启动jupyter。在页面上创建脚本时就会发现有node的选择项。
然后在新建的脚本中尝试执行console.log(1) 执行成功代表搭建完成.
通过命令行可以下载自己所需要的包
后记
在公司使用中,我们一般将环境配置好之后通过docker commit 将容器打造成镜像。然后配置dockerfile,这样就可以将其变成一个启动就可用的juyper环境啦。当然你也可以直接在虚拟机上起一个ubuntu环境也是一样的。记住,线上的脚本一定要定时备份上传git。否则一旦丢失损失巨大(血泪教训)。
在配置文件中修改更多配置
jupyter notebook --generate-config
# 修改配置文件
vim ~/.jupyter/jupyter_notebook_config.py
# 第83行,允许远程访问
c.NotebookApp.allow_remote_access = True
# 第85行,允许root启动
c.NotebookApp.allow_root = True
# 第205行,监听任意的访问IP地址
c.NotebookApp.ip = '*'
# 第263行,加载默认的notebook文件夹,即容器启动时挂载的主机代码目录
c.NotebookApp.notebook_dir = '/home/code_directory'
# 第354行,设置默认token
c.NotebookApp.token = '1357'