1 选择基础镜像 这里我们选择jupyterhub的官方镜像

docker pull jupyterhub/jupyterhub

2 启动容器

docker run -p 8000:8000 -d --name jupyterhub jupyterhub/jupyterhub jupyterhub

此处映射端口可以指定,我使用默认端口映射8000

3 使用浏览器访问 ip:端口 使用root账户登录 如果不知道root密码可以重置密码

然后不出意外会出现这种情况:

这是因为jupyter禁用了root账户登录,如果需要可以使用

docker exec -it jupyterhub bash

进入容器内部,会直接进入到work文件夹 里面有一个文件: jupyterhub_config.py

vim jupyterhub_config.py

添加配置使用root账户登录,如果加了也不行:

直接在容器中添加用户

useradd wzw

密码

passwd wzw

输入密码 完了之后也是登录不了的 会显示找不到user/用户名的文件目录

这时候我们新增用户文件夹

chmod -R 777 home # 给home 权限

cd /home # 进入目录

mkdir wzw`` #创建文件夹

chown wzw:wzw wzw -R #这句话的意思是将wzw文件夹给wzw用户 并开启权限

完事之后添加此用户为管理员用户

vim jupyterhub_config.py 打开配置文件添加

c.Authenticator.admin_users = {'wzw'}

3安装中文界面,并浏览器访问

pip install jupyterlab-language-pack-zh-CN # 安装中文界面

打开浏览器登录,在Settings里面可以切换语言为简体中文

这是我配置完的界面 实际上你们登录应该是jupyter notebook的界面 就像这样

如果你想开启jupyterlab 需要安装jupyterlab的包

pip install jupyterlab

然后修改jupyterhub的默认使用jupyterlab

vim jupyterhub_config.py 打开配置文件 添加

c.Spawner.default_url = '/lab'

再次打开浏览器 就变成jupyterlab的界面了 jupyterlab其实是jupyternotebook的升级版 包含了jupyternotebook的全部功能 更加强大

添加java内核 转

具体步骤:

一、java 环境配置
1.下载 jdk (这里从官网下载最新版 11.0.1)

具体下载链接可以自己从浏览器内点击下载后复制,上述链接有用户参数,可能只能在当时用,就是说要登录甲骨文官网,之后找到jdk11的linux-x64_bin.tar.gz版本 复制链接 使用wget+链接下载

2.解压下载好的压缩包
tar -zxvf jdk-11.0.15.0.tar.gz

名称不对应使用 mv 命令更名即可

注意tar解压出来版本可能和文档上的不一样

3.使用 root 权限用户新建 jdk 目录,并且将解压的文件夹移动到新建的目录
mkdir /usr/lib/jdk

mv jdk-11.0.15.0 /usr/lib/jdk

移动后的目录结构为:/usr/lib/jdk/jdk-11.0.15.0

4.配置环境变量
vi /etc/profile

在系统环境文件中添加以下语句:

#----------JDK begin
export JAVA_HOME=/usr/lib/jdk/jdk-11.0.15.0export JRE_HOME=$JAVA_HOME/jreexport CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/libexport PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
#-------------JDK end

其中 JAVA_HOME 可以根据具体情况改变

使用以下命令激活刚配置的环境变量:

source /etc/profile

5.测试 java 是否安装成功
java -version

输出 java version “11.0.15.0” 等版本信息即安装成功

二、java 内核安装
1.下载 java 内核压缩包
wget https://github.com/SpencerPark/IJava/releases/download/v1.2.0/ijava-1.2.0.zip

2.解压下载得压缩包
unzip ijava-1.2.0.zip

解压后得到一个 install.py 的文件,和一个 java 文件夹

3.安装 java 内核
在第二步解压后的文件夹中,执行以下命令安装:

python install.py --sys-prefix

确保 python 版本为 3,或者用 python3 执行也可以

再次打开jupyterhub 会显示java的内核

切换到java内核无提示说明安装成功!

安装c内核

使用pip安装包
pip install jupyter-c-kernel

运行安装命令
sudo install_c_kernel

添加c内核到所有用户
python -m ipykernel install --user --name=kernelname --display-name showname

浏览器打开

看到c切换到c内核无提示说明安装成功!

添加用户

我们使用上面的管理员账户登录 点击文件 点击hub管理界面 点击Admin 就可以看到当前用户界面 可以删除用户 添加用户 暂停用户服务…

到这就完成全部安装过程!!

使用docker搭建自己的jupyterhub多用户服务器相关推荐

  1. 威联通NAS用Docker搭建Minecraft(MC)服务器

    QNAP使用Docker容器搭建我的世界游戏服务器 本教程以1.19版官方版服务端为例,其他服务端也差不多的流程. 视频教程:https://www.bilibili.com/video/BV16Z4 ...

  2. 【私有git】使用docker搭建gitlab-ce中文社区版服务器

    环境 sudo usermod -aG docker 你的用户名 newgrp - docker 1.linux 目标 1.搭建gitlab-ce 2.如果有公网ip实现外网访问 3.使用vs cod ...

  3. Linux+MCSM9+Docker 搭建我的世界mohist1.18.2版服务器,MC开服教程

    Debian系统使用MCSManager9面板和Docker容器搭建Minecraft Java版私服的教程,本教程用的mohist1.18.2服务端,用其他服务端的也可以参考一下. mohist支持 ...

  4. 使用Docker搭建svn服务器教程

    使用Docker搭建svn服务器教程 svn简介 SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很 ...

  5. 使用docker搭建gitlab服务器

    使用docker搭建gitlab服务器 一.查看当前dokcer环境 二.安装docker-compose 三.编辑yaml文件 1.创建目录及yaml文件 2.编辑ymal文件 四.生成自签名证书文 ...

  6. Docker搭建WebLogic服务器

    Docker搭建WebLogic服务器 docker命令快速部署 第一步:保存下面代码为start.sh脚本,执行chmod +x start.sh ,  执行 ./start.sh , 第一次耐心等 ...

  7. 搭建阿里云Linux版服务器+使用docker安装EMQ、Node-RED、MySQL+本地Navicat访问数据库(增删改查)——详细流程

    搭建阿里云Linux版服务器+使用docker安装EMQ.Node-RED.MySQL+本地Navicat访问数据库 云服务器基础搭建 注册云服务器 XShell简介 部署EMQ 部署docker 物 ...

  8. 使用docker搭建web服务器,提示无法访问此网站,怎么解决

    使用docker搭建web服务器,提示无法访问此网站,怎么解决 首先看容器是否起来: 正确如下图 如果没启动 docker ps -a查到容器 docker start 容器名 启动容器 如果没运行: ...

  9. 基于Docker搭建DzzOffice与OnlyOffice线上协同办公服务器

    简介   记录一下在debian服务器上搭建线上协同办公服务器过程中的遇到的问题,避免后续安装过程中出现卡壳的情况. 安装数据库   在docker官方镜像源上下载mysql数据库镜像,下载使用时My ...

最新文章

  1. python如何打开文件编辑界面_Python-PyQt5-图形可视化界面(5)--打开文件或文件夹--QFileDialog...
  2. tf-idf:信息检索
  3. python 环形链表
  4. Weka学习二(聚类算法)
  5. MyBatis Generator Example.Criteria 查询条件复制
  6. jquery和zepto的扩展方法extend
  7. Coverage analysis in AIE
  8. 第一百二十二期:大数据分析:红包先抢好,还是后抢好
  9. 【Elasticsearch】玩转 Elasticsearch 7.8 的 SQL 功能
  10. WebDev.WebServer.exe遇到问题需要关闭
  11. wechat.php+获取昵称,微信后台代码,获取用户昵称
  12. c语言编译如何去掉warning,16种C语言编译警告(Warning)类型的解决方法
  13. 为什么打不过滴滴的Uber也要做无人驾驶?
  14. 输入一个递增排序的数组和一个数字S,在数组中查找两个数,是的他们的和正好是S,如果有多对数字的和等于S,输出两个数的乘积最小的。...
  15. 复变函数:傅里叶变换
  16. 深入理解HTTP消息头
  17. 运放放大倍数计算公式_运放选型速记指南
  18. 品牌稿件怎么写?这些品牌稿件写作技巧值得一看
  19. 欲戴王冠,砥砺前行。
  20. React+Antd+TypeScript 开发规范

热门文章

  1. ION-DTN报错Wrong profile for this SDR
  2. 多级分销模块 java_java B2B2C 源码 多级分销Springcloud多租户电子商城系统-hystrix的工作原理...
  3. 如何避免成为一个油腻的前端 1
  4. 使用html5编辑爱心树表白呈现效果
  5. 目标检测“A-Fast-RCNN: Hard Positive Generation via Adversary for Object Detection”
  6. jFinal集成activiti流程管理框架
  7. ISIS【中间系统到中间系统】is-is链路状态协议
  8. j2me在线音乐播放器技术分析
  9. 按头安利 好看又实用的天空 云cc0高清摄影图片素材看这里
  10. seo伪原创工具(解析新云查新型伪原创模式工具)