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

一、安装anaconda 和 jupyter

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

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

anaconda官网下载地址
官网
选择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
在这里插入图片描述
经过一顿查,找到了解决办法,问题出在这一条配置上:
c.NotebookApp.ip=’*'

解决方法修改/etc/hosts

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

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

在这里插入图片描述
进入/etc/hosts,添加上一行内容

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

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

最后运行jupyter notebook成功
在这里插入图片描述
远程访问
在这里插入图片描述

  • 16
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 17
    评论
这个错误通常是由于服务器无法分配所请求的地址导致的。有两种解决办法可以避免这个错误。 方法一是检查服务器的网络配置,确保服务器的IP地址和端口号是正确的,并且没有被其他程序占用。如果有其他程序正在使用相同的IP地址和端口号,你可以尝试更改服务器的IP地址和端口号,或者停止其他程序的运行。 方法二是在代码中添加异常处理机制,当出现OSError: \[Errno 99\] Cannot assign requested address错误时,程序会继续尝试连接服务器。你可以使用以下代码片段作为参考: ```python while True: try: tcpOrder_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) tcpOrder_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) locall_addr = ("", 7890) tcpOrder_socket.bind(locall_addr) tcpOrder_socket.connect((server_ip, int(server_port))) choice_num = input("请输入操作代码:") except Exception as link_fault: continue ``` 这样,当出现OSError: \[Errno 99\] Cannot assign requested address错误时,程序会继续尝试连接服务器,直到成功为止。请注意,这种方法只是暂时解决了错误,而不是解决了根本原因。如果你能找到导致这个错误的具体原因,最好还是修复它。引用\[1\] 引用\[2\] 引用\[3\] #### 引用[.reference_title] - *1* *2* *3* [Python OSError: [Errno 99] Cannot assign requested address错误的解决](https://blog.csdn.net/weixin_40612082/article/details/80032613)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 17
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Systemd

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值