阿里云服务器下jupyter notebook 远程访问,已解决OSError: [Errno 99]Cannot assign requested address等问题

一、安装anaconda 和 jupyter

p s : 如 果 出 现 的 问 题 跟 我 一 样 , 前 面 就 不 用 看 了 , 直 接 跳 到 3 、 编 辑 配 置 那 里 \color{red}{ps:如果出现的问题跟我一样,前面就不用看了,直接跳到3、编辑配置那里} ps3

1、anaconda安装(用anaconda是因为管理环境很方便):

anaconda官网下载地址
阿里云服务器下jupyter notebook 远程访问,已解决OSError: [Errno 99]Cannot assign requested address等问题_第1张图片
选择linux版本右键复制下载链接,然后xshell连接服务器,随便选择一个文件下,运行以下命令下载

wget  https://repo.anaconda.com/archive/Anaconda3-2019.03-Linux-x86_64.sh

下载完成后,在当前文件夹下运行安装

bash Anaconda3-2019.03-Linux-x86_64.sh

如果安装完成后 运行conda命令,报错找不到命令,就把conda路径加入到 .bashrc 中,具体做法:

vim ~/.bashrc
export PATH=~/anaconda3/bin:$PATH   # 加上这一行,wq保存退出

source ~/.bashrc  # 重新加载该文件  

2、新建一个环境并安装jupyter

conda create -n jupyter_env python==3.7  # 创建环境
source activate jupyter_env    # 激活进入环境
conda install jupyter  # 安装jupyter

二、jupyter远程访问配置(这个环节跟着网上通用的那些配置方法走出了挺多问题)

1、生成配置文件(~/.jupyter/jupyter_notebook_config.py)

jupyter notebook --generate-config

2、生成密钥

jupyter notebook password  # 自己造一个密码输入一确认一次
vim ~/.jupyter/jupyter_notebook_config.json

记下密钥,sha1:03c74e2b144e:7…

3、编辑配置文件

vim ~/.jupyter/jupyter_notebook_config.py

修改以下几项

c.NotebookApp.ip='*'                                  # 就是设置所有ip皆可访问  
c.NotebookApp.password = u'sha1:03...       # 刚才复制的那个密文'  
c.NotebookApp.open_browser = False       # 禁止自动打开浏览器  
c.NotebookApp.port =1234                         #随便指定一个端口  

设置端口后要在阿里云控制台把这个端口打开
在这里插入图片描述
启动下jupyter notebook 如果能正常启动那就不用往下看了

调 b u g : \color{red}{调bug:} bug

我按照上述方法配置之后运行报错:OSError: [Errno 99]Cannot assign requested address
阿里云服务器下jupyter notebook 远程访问,已解决OSError: [Errno 99]Cannot assign requested address等问题_第2张图片
经过一顿查,找到了解决办法,问题出在这一条配置上:
c.NotebookApp.ip=’*'

解决方法修改/etc/hosts

首先获取本机内网ip和本机hostname

ifconfig    # 获取本机内网ip
vi /etc/hostname    # 获取hostname

阿里云服务器下jupyter notebook 远程访问,已解决OSError: [Errno 99]Cannot assign requested address等问题_第3张图片
进入/etc/hosts,添加上一行内容

内网ip   hostname   # 上面获取的那两个

~/.jupyter/jupyter_notebook_config.py 中的 c.NotebookApp.ip= ’ * ’ 这一条改为
c.NotebookApp.ip= ‘内网ip hostname’ 与/etc/hosts中添加的那一行保持一致

最后运行jupyter notebook成功
阿里云服务器下jupyter notebook 远程访问,已解决OSError: [Errno 99]Cannot assign requested address等问题_第4张图片
远程访问
阿里云服务器下jupyter notebook 远程访问,已解决OSError: [Errno 99]Cannot assign requested address等问题_第5张图片

你可能感兴趣的:(Python,语法)