IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> docker容器安装jupyter notebook(安装、配置、修改全过程) -> 正文阅读

[系统运维]docker容器安装jupyter notebook(安装、配置、修改全过程)

一、镜像拉取

Docker hub官网查找自己想要的docker image

https://hub.docker.com/

例如,本文使用miniconda3的lastest版本:

使用命令拉取镜像:

$ docker pull continuumio/miniconda3

二、启用容器

$ docker run -id 
-p XXXX-XXXX:XXXX-XXXX 
-p XXXX:xxxx 
--gpus all
--name XXXX 
--restart always 
-v /home/XXXX:/data  
--user root continuumio/miniconda3:latest

其中-p为端口映射,a:b,a为宿主机端口,b为容器内部端口。

其中宿主机的一个端口只能映射到容器内部的某一个端口上

? ? ? ?比如:8080->80之后,就不能8080->81。

但是容器内部的某个端口可以被宿主机的多个端口映射,比如:8080->80,8081->80,8082->80

查看端口映射命令:

$ docker port CONTAINER_ID

?三、容器内安装jupyter notebook

# 更新apt-get
$ apt-get update

# 安装python dev包
$ apt-get install python-dev

# 安装jupyter
$ pip install jupyter

四、配置jupyter notebook

配置包括可以外部访问、设置密码、端口号、防火墙关闭。

首项,jupyter notebook默认端口为8888,并且不允许docker外部访问,想要开启必须配置jupyter_notebook_config.py文件。

# 首先初始化jupyter_notebook_config.py
$ jupyter notebook --generate-config

# 使用ipython生成密钥
$ ipython
[1]:from notebook.auth import passwd
[2]:passwd()
Enter password: XXXX
Verify password: XXXX
Out[2]: '生成的一串密钥'
# 注意保存生成的密钥

# 编辑jupyter_notebook_config.py
$ vim /root/.jupyter/jupyter_notebook_config.py

# 设置c.NotebookApp.password,注意前面加 u
c.NotebookApp.password=u'生成的一串密钥'

# 设置外部访问
''' 连通性设置
c.NotebookApp.allow_remote_access = True
''' ip设置
c.NotebookApp.ip='*'
''' 禁止自动打开浏览器
c.NotebookApp.open_browser = False
''' 端口设置
c.NotebookApp.port = XXXX

# 启动jupyter notebook
$ jupyter notebook

放行linux防火墙:

# 放行你所设置的端口防火墙
# 注意映射问题
$ sudo firewall-cmd --zone=public --add-port=XXXX/tcp --permanent

# 重启防火墙
$ sudo systemctl restart firewalld

?即可正常从网页端访问jupyter notebook,第一次需要输入密钥,以后会记住密钥。

五、个性化设置

安装jupyter notebook的插件。

# 安装插件前记住停止jupyter notebook
# pip安装插件
$ pip install jupyter_contrib_nbextensions

# 配置 nbextension
$ jupyter contrib nbextension install --user --skip-running-check

# 重启jupyter notebook
$ jupyter notebook

选取插件控制器:

?

?推荐以下插件:

  • Table of Contents (2):根据markdown的标题栏自动生成目录,有个按钮,可以自动添加数字编号;
  • Code prettify:对代码进行格式化;
  • Collapsible Headings:可以根据headings折叠区域;
  • Codefolding:可以对代码块进行折叠;
  • ScrollDown:当代码输出内容过长,自动下拉滚动条;
  • 其他功能自行查找示例!

?下面配置工作目录,首次打开会是根目录‘/’下的工作环境,不太方便,按个人需求配置。

# 编辑/root/.jupyter/jupyter_notebook_config.py
$ vim /root/.jupyter/jupyter_notebook_config.py

# 修改路径
c.NotebookApp.notebook_dir = 'XXX'

# 重新启动jupyter notebook
$ jupyter notebook

最后效果如下:

?大功告成!

  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2022-03-15 23:07:58  更:2022-03-15 23:08:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 2:29:00-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码