用docker在jetson-nano上安装jupyterlab
自从Jetpack 4.3,Nvidia引入了Cloud-Native的概念,然后JetPack系统image就自带了nvidia的docker。使用docker的好处是可以快速部署一个目标环境,减少了各自依赖安装的环节,大大提高了生产效率。我们今天就来看看,怎样可以在Jetson Nano上快速搭建一个JupyterLab的环境。比起之前介绍的《Jetson Nano 安装 Jupyter Lab》,要简单很多。
检查docker是否有正确安装
- 检查docker版本
docker --version
如果你看到docker能正常显示版本信息,则代表docker已经正常安装,否则你要先安装在环境中docker,可以参考官方网站。
选择Jupyter的docker image
Jupyter团队已经在docker hub为你准备好三款基础的jupyter image,它们的区别在于不同image上安装了不同的软件,他们的用途有所不同,你可以根据你的自身需求,选择适合的image,萝卜青菜各有所爱。
-
$1
-
$1
-
$1
-
$1
还有装好其他环境的image,大家可以参考《在树莓派/JetsonNano安装docker》
下载 jupyter image
选好了image,运行以下命令就能下载对应的image到本地
sudo docker pull jupyter/base-notebook

运行jupyter
sudo docker run -p 8888:8888 -v /home/bbot:/home/jovyan/work jupyter/base-notebook
其中 -p 8888:8888 代表把系统的8888端口(左边)映射到docker环境的8888端口(右边)。 -v /home/bbot:/home/jovyan/work 指的是把系统home目录映射到docker环境里的/home/jovyan/work目录,你可以根据需要设定映射关系。
上图代表运行成功,通过红框的url访问jupyter。
配置jupyterlab
参考《Jetson Nano 安装 Jupyter Lab》,你可以设置密码来访问jupyter,还有支持本地网络访问。
开机启动jupyterlab
稍微修改一下启动的命令,即可支持开机时自动启动jupyter的容器。
sudo docker run --restart=always -d -p 8888:8888 -v /home/bbot:/home/jovyan/work jupyter/base-notebook
其中-restart=always代表无论容器的当前状态如何,当docker启动时容器会自动启动。 -d 的作用是容器在后台运行。
通过jupyterlab登录到宿主的系统
有时候,通过docker来安装jupyter就是为了方便远程工作,但需要连接回宿主系统也是经常需要的,因某些设备可能在设定jupyter时没有设置好。
因为base-notebook没有事先安装openssh-client,所以需要先安装。
sudo apt-get update
sudo apt-get install openssh-client
安装好就可以通过172.17.0.1地址登录宿主
ssh root@172.17.0.1
如果想更方便快捷进入系统,可以把docker里的public key加到宿主上,这样连密码都不用打。
好的,这里完了,折腾愉快!