从搭建python开始,搭建jupyter服务并以密码登录,centos7设置jupyter开机自启。

https://blog.csdn.net/sunt2018/article/details/84777458

安装python

# 安装python依赖
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
#如果是python3.7新版本,还需如下
yum install libffi-devel -y
#否则会报ModuleNotFoundError: No module named '_ctypes
yum -y install zlib*
#zipimport.ZipImportError: can't decompress data; zlib not available
yum install openssl-devel -y
# 安装完,没有bin下的 pip/pip3
# 编译时,使用 ./configure --prefix=/usr/python37 --with-ssl




cd /usr/bin/
mv python python.2bak

# 先下载wget,然后下载python3.6.4
mkdir /usr/local/python3/

# 进入/usr/local/python3/目录下
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tgz

# 解压
tar -xvf Python-3.6.4.tgz
cd  Python-3.6.4
./configure --prefix=/usr/local/python3
make
make install

# python3会安装在 /usr/local/python3 这个目录下
cd /usr/local/python3
ll
rm -rf Python-3.6.4* 删除我们刚刚下载的压缩包和解压包
cd /usr/bin
ln -s /usr/local/python3/bin/python3 /usr/bin/python
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip
# 做一个软链接,刚刚我们移走备份的python指向的是python2
# 现在我们指向 刚刚安装的python3,此时我们 使用python就是python3了

# 但是centos的yum是依赖python2的,我们把python指向了python3非python2
# yum会报错,现在去修改这个错误
vim /usr/bin/yum
# 第一行#!/usr/bin/python
# 改成#!/usr/bin/python2.7
# OK~!
#下载的时候出问题
vi /usr/libexec/urlgrabber-ext-down


#但是还是有很多其他问题,很多都依赖于python2
#不需要移动python,直接软连接到python3也可以
#ln -s /usr/local/python3/bin/python3 /usr/bin/python3
--------------------- 
作者:_Tsun 
来源:CSDN 
原文:https://blog.csdn.net/sunt2018/article/details/84777458 
版权声明:本文为博主原创文章,转载请附上博文链接!

配置虚拟环境

pip install virtualenv
pip install virtualenvwrapper


vim ~/.bashrc

export PATH=$PATH:/usr/local/python3/bin
export WORKON_HOME=/root/PythonEnvs
source /usr/local/python3/bin/virtualenvwrapper.sh

source ~/.bashrc

创建虚拟环境

mkvirtualenv myjupyter

安装 jupyter

# 进去虚拟环境,如果没有忽略
workon myjupyter
# 安装 jupyter
pip install jupyter

启动

jupyter notebook --allow-root --ip 0.0.0.0 --port 7999
# 默认不允许/不建议root启动jupyter,如果非要用,加上--allow-root
# --ip ip填写0.0.0.0 或者本机ip
# --port 端口号

#启动后,浏览器访问对应ip和端口就行,需要输入token,token在启动界面有输出

生产配置文件

# 每次记住token,复制再登录不现实
jupyter notebook --generate-config
# 生成的配置文件位于 ~/.jupyter/jupyter_notebook_config.py。
jupyter-notebook password
# 输入两边密码

# 启动,就可以 以固定密码登录了
jupyter notebook --allow-root --ip 0.0.0.0 --port 7999

#设置浏览器打开jupyter默认路径
vim ~/.jupyter/jupyter_notebook_config.py
# 填写自己想要的服务器路径
c.NotebookApp.notebook_dir='/root/myjupyter_dir'
设置jupyter开机启动

systemctl脚本目录:/usr/lib/systemd/
系统服务目录:/usr/lib/systemd/system/
用户服务目录:/usr/lib/systemd/system/

cd /usr/lib/systemd/system/
vim myjupyter.service
[UNIT]

#服务描述
Description=python jupyter Service

#指定了在systemd在执行完那些target之后再启动该服务
After=network.target


[Service]

#定义Service的运行类型,一般是forking(后台运行)  
#Type=forking  这个会卡住啊,不写Type 或者 如下
Type=simple


#定义systemctl start|stop|reload *.service 的执行方法(具体命令需要写绝对路径)
#注:ExecStartPre为启动前执行的命令
# ExecStartPre=/usr/bin/test "x${NETWORKMANAGER}" = xyes
ExecStart=/root/PythonEnvs/myjupyter/bin/jupyter notebook --allow-root --ip 0.0.0.0 --port 7999
#ExecReload=
# ExecStop=/home/mobileoa/apps/shMediaManager.sh -stop

#创建私有的内存临时空间
PrivateTmp=True


[Install]

#多用户
WantedBy=multi-user.target
重载系统服务:systemctl daemon-reload

设置开机启动:systemctl enable myjupyter.service


启动服务:systemctl start myjupyter.service
# 停止服务:systemctl stop myjupyter.service
# 重启服务:systemctl reload myjupyter.service
"""
不考虑 安全风险。
"""

你可能感兴趣的:(从搭建python开始,搭建jupyter服务并以密码登录,centos7设置jupyter开机自启。)