上班以后时间就不会那么充足了,最近申请了公司的一个服务器,打算挤出点时间继续我的学习之旅。用公司服务器安装jupyter就遇到了问题,所以在这里记录一下,省得以后坑。
1.下载安装anaconda.
到官方网站下载linux版本的.sh。上传到服务器中,这里推荐使用Transmit这款软件,图形界面操作。
bash Anaconda3-5.2.0-Linux-x86_64.sh
输入上面的命令进行安装。如果由于环境报错,输入如下的命令,
yum install -y bzip2
这里可以参考blog详细的介绍
2.安装jupyter
使用命令生成默认的配置,因为anaconda默认安装了jupyter,这里只需要进行配置就可以了
jupyter notebook --generate-config
设置密码,生成sha1,要复制,后面会用到,终端输入:python。
from notebook.auth import passwd
passwd()
然后进入配置文件,添加config。
vi ~/.jupyter/jupyter_notebook_config.py
将下面的配置添加到最后面。
c.NotebookApp.ip = '*' ##可以让任何主机访问jupyter的ip地址
c.NotebookApp.open_browser = False ##由于远程访问jupyter,因此关闭自动打开浏览器
c.NotebookApp.password = u'sha1:******' ##复制刚才的秘钥到这里
c.NotebookApp.port = 9999
c.NotebookApp.notebook_dir = '/home/wh'
如果使用root时,需要jupyter notebook --allow-root --ip=*.*.*.*,当不添加后面的ip地址的时候会出现下面错误:
socket.gaierror: [Errno -2] Name or service not known。这里需要添加ip地址,即你的服务器地址,
nohup jupyter notebook --allow-root --ip=172.168.1.220 & # Session断开也继续运行
好多进行到这一步,也没有报错,但是就是访问不了,这是由于9999这个端口没有开放,可以使用telnet ip:9999查看端口是否能够访问。然后解决的方法就是防火墙开放这个端口。
firewall-cmd --zone=public --add-port=9999/tcp --permanent
然后重新刷新防火墙
firewall-cmd --zone=public --query-port=9999/tcp
firewall-cmd --reload
最后,通过浏览器就可以进行正常的访问和使用了。