linux服务器安装miniconda3+jupyter(单用户模式)+jupyterhub(单服务器多用户模式)的开发环境
一、 linux服务器上安装miniconda3,实现多用户安装比较麻烦的是下载时候的环境配置,增加环境变量从而保证多用户使用。具体步骤如下:为了统一管理安装的软件,我们将下载的安装包以及软件都放到/opt 目录下。##使用root用户下载安装,并且安装到/opt目录下root@iZuf60za0a748jc3c71epvZ:~# cd /optroot@iZuf60za0a748jc3c71ep
一、 linux服务器上安装miniconda3,实现多用户安装
比较麻烦的是下载时候的环境配置,增加环境变量从而保证多用户使用。
具体步骤如下:
为了统一管理安装的软件,我们将下载的安装包以及软件都放到/opt 目录下。
##使用root用户下载安装,并且安装到/opt目录下
root@iZuf60za0a748jc3c71epvZ:~# cd /opt
root@iZuf60za0a748jc3c71epvZ:/opt# ls
# 在linux在使用以下命令下载miniconda
wget -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Linux-x86_64.sh
# 安装刚刚下载的Miniconda,bash就是运行.sh文件的意思
bash Miniconda3-latest-Linux-x86_64.sh
然后根据提示按enter键或者输入yes,即可。对于安装路径选项,选择安装路径为/opt/miniconda3
然后进入root根目录,查看.bashrc配置文件查看默认安装下的miniconda3环境变量配置信息:
root@iZuf60za0a748jc3c71epvZ:/opt# cd ~
root@iZuf60za0a748jc3c71epvZ:~# ls -a
. .bash_history .cache .config jupyterhub.sqlite .pip .pydistutils.cfg .viminfo .Xauthority
.. .bashrc .conda jupyterhub_cookie_secret .npm
root@iZuf60za0a748jc3c71epvZ:~# vim ~/.bashrc
##下面为激活miniconda的环境配置信息
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/opt/miniconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/opt/miniconda3/etc/profile.d/conda.sh" ]; then
. "/opt/miniconda3/etc/profile.d/conda.sh"
else
export PATH="/opt/miniconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
##最后执行命令:
root@iZuf60za0a748jc3c71epvZ:~# source ~/.bashrc
(base) root@iZuf60za0a748jc3c71epvZ:~#
这样每次登陆root用户都会自动激活base环境,对于其他用户也使用root用户在/opt下安装的miniconda3,只需要在每个用户下的.bshrc文件添加上面的环境配置信息。并且执行source ~/.bashrc 即可。
两种配置方式:
- 1、~/.bashrc:该文件包含专用于某个用户的bash shell的bash信息,当该用户登录时以及每次打开新的shell时,该文件被读取。每个用户的.bashrc都更改,并激活;
- 2、将配置信息添加到etc/profile 此文件为系统的每个用户设置环境信息,当第一个用户登录时,该文件被执行.
二、linux服务器上为单个用户安装jupyter,并实现远程访问,保证数据开发工作
jupyter简介
Jupyter Notebook(此前被称为 IPython notebook)是一个交互式笔记本,支持运行 40 多种编程语言。upyter Notebook 的本质是一个 Web 应用程序,便于创建和共享文学化程序文档,支持实时代码,数学方程,可视化和 markdown。 用途包括:数据清理和转换,数值模拟,统计建模,机器学习等等。对于数据开发这来说jupyter是一个很好的开发环境,数据挖掘领域中最热门的比赛 Kaggle 里的资料都是Jupyter 格式。
linux服务器安装jupyter notebook并激活配置
- 更换到安装用户目录下
(base) root@iZuf60za0a748jc3c71epvZ:~# su wss
(base) wss@iZuf60za0a748jc3c71epvZ:/root$ cd ~
(base) wss@iZuf60za0a748jc3c71epvZ:~$ ls -a
- pip 或者conda 安装jupyter
(base) wss@iZuf60za0a748jc3c71epvZ:~$ pip -u install jupyter
- 生成jupyter notebook配置文件
(base) wss@iZuf60za0a748jc3c71epvZ:~$ jupyter notebook --generate-config
##查看生成的配置文件
(base) wss@iZuf60za0a748jc3c71epvZ:~$ vi ~/.jupyter/jupyter_notebook_config.py
# Configuration file for jupyter-notebook.
c.NotebookApp.ip='*' ##访问ip,一般为服务器公网或者私网ip
c.NotebookApp.password = u'(此处填写登录密码)'
c.NotebookApp.open_browser = False
c.NotebookApp.port =8001 ##指定的访问配置端口
- 设置jupyter登录密码,并且生成密文
(base) wss@iZuf60za0a748jc3c71epvZ:~$ python
Python 3.7.4 (default, Aug 13 2019, 20:35:49)
[GCC 7.3.0] :: Anaconda, Inc. on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from notebook.auth import passwd
>>> passwd()
Enter password:
Verify password:
'密文'
>>>
- 设置jupyter登录密码,并且生成密文
(base) wss@iZuf60za0a748jc3c71epvZ:~$ vi ~/.jupyter/jupyter_notebook_config.py
##将上述生成的密文添加到
c.NotebookApp.password = u'(此处填写登录密码)'
- 启动jupyter (后台挂起)
在服务器终端输入以下命令,会默认使用jupyter_notebook_config.py 配置来开启当前客户端的jupyter notebook服务。
##后台始终挂起进程,并且输出日志到jupyter.log
(base) wss@iZuf60za0a748jc3c71epvZ:~$ nohup jupyter notebook << jupyter.log &
- 利用 ip:8001(指定的ip和端口)进行远程登录
- 查看后台运行,杀死进程,重新启动jupyter等操作
(base) wss@iZuf60za0a748jc3c71epvZ:~$ ps ux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
wss 300 0.0 1.0 41856 22332 pts/0 S+ 02:37 0:00 python
wss 384 0.0 0.2 22500 5008 pts/1 S 02:49 0:00 bash
wss 422 0.0 0.1 37364 3292 pts/1 R+ 02:56 0:00 ps ux
wss 18615 0.0 0.9 61196 20228 ? Ss 2019 25:34 /home/wss/sites/shuangblog.com/env/bin/python3 /home/wss/sites/shuangblo
wss 18622 0.0 3.1 168792 65324 ? S 2019 5:16 /home/wss/sites/shuangblog.com/env/bin/python3 /home/wss/sites/shuangblo
wss 18623 0.0 3.1 168316 64996 ? S 2019 5:20 /home/wss/sites/shuangblog.com/env/bin/python3 /home/wss/sites/shuangblo
wss 30126 0.0 2.8 106548 58172 ? S Feb21 0:02 /opt/miniconda3/bin/python /home/wss/.local/bin/jupyter-notebook
wss 32691 0.0 0.2 22604 5308 pts/0 S 01:43 0:00 bash
(base) wss@iZuf60za0a748jc3c71epvZ:~$ ps -ef|grep jupyter
wss 424 384 0 02:57 pts/1 00:00:00 grep --color=auto jupyter
wss 30126 1 0 Feb21 ? 00:00:02 /opt/miniconda3/bin/python /home/wss/.local/bin/jupyter-notebook
(base) wss@iZuf60za0a748jc3c71epvZ:~$ kill -9 30126
(base) wss@iZuf60za0a748jc3c71epvZ:~$ ps -ef|grep jupyter
wss 428 384 0 02:58 pts/1 00:00:00 grep --color=auto jupyter
##重启进程
(base) wss@iZuf60za0a748jc3c71epvZ:~$ nohup jupyter notebook >>jupyter.log &
[1] 652
(base) wss@iZuf60za0a748jc3c71epvZ:~$ ps -ef|grep jupyter
wss 652 625 2 03:09 pts/1 00:00:00 /opt/miniconda3/bin/python /opt/miniconda3/bin/jupyter-notebook
具体的远程登录jupyter界面如下:

三、linux单服务器多用户同时开发,jupyterhub安装
jupyterhub简介
jupyterhub适合于项目小组的多人同时在线开发,对于linux的多用户开发创建。支持多用户的 Jupyter Notebook 服务器,用于创建、管理、代理多个 Jupyter Notebook 实例。具有扩展性和可定制性。
具体安装流程可以参考一下博客文章
四、基本使用流程(包括虚拟环境创建使用以及脚本新建等)
新建脚本文件,并给输入相关测试代码:

更多推荐
所有评论(0)