阿里云ESC服务器配置jupyter notebook远程访问

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_36274515/article/details/87643759

1. 安装Anaconda

  • 下载地址:清华镜像站
  • 在服务器上选择tar包解压安装并配置环境变量
#JAVA_HOME
export JAVA_HOME=/opt/jdk1.8.0_191
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

#added by Anaconda3 4.4.0 installer
export PATH="/root/anaconda3/bin:$PATH"

2. 添加jupyter notebook远程访问配置文件

  1. 创建一个名为nbserver的配置,该配置文件夹中包含基础配置文件
ipython profile create nbserver
cd ~/.ipython/profile_nbserver/
  1. 创建ssl证书
    ipython Notebook要求https连接,因此我们需要创建一个ssl证书
openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem
  1. 创建远程登陆密码
    启动ipython
ipython

创建远程连接密码

In [1]: from notebook.auth import passwd
In [1]: passwd()
Enter password:(远程访问登录密码)
Verify password:(确认远程访问登录密码)
sha1:b86e9331....... #输出创建密码hash值

注:记住 sha1 的值
4. 编辑配置文件

vim ipython_notebook_config.py

添加如下配置内容:

c = get_config()
# 所有matplotlib的图像都通过iline的方式显示
c.IPKernelApp.pylab = 'inline'
# 这一行指向我们刚刚创建的ssl证书
c.NotebookApp.certfile = u'/root/.ipython/profile_nbserver/mycert.pem'
# 给出刚刚创建的密码的哈希值
c.NotebookApp.password = u'sha1:b86... 
# ip设置为*表示全部
c.NotebookApp.ip = '*'
# 给出运行的端口,ipython默认为8888,看情况自己修改
c.NotebookApp.port = 8888
# 禁止在运行ipython的同时弹出浏览器
c.NotebookApp.open_browser = False

    :wq!
    # 查看端口是否占用脚本
    # netstat -anp|grep 60013

3. 启动jupyter noterbook

# 给出你刚才创建的nbserver路径
jupyter notebook --config=/root/.ipython/profile_nbserver/ipython_notebook_config.py

后台运行,推出shell也能保持运行

nohup jupyter notebook --config=/root/.ipython/profile_nbserver/ipython_notebook_config.py --allow-root &

其中,--allow-root 是运行root用户运行该条命令,否则会弹出警告

4. 设置阿里云安全组(非阿里云用户无需这一步)

控制台-云服务器ESC-实例 选择自己的主机点击本实例安全组-安全组列表-配置规则-入方向-添加安全组规则添加如下图所示配置
注:其中端口号填写自己设置的端口
配置规则

5. 访问

在浏览器中输入

https://serverIP:60013 # serverIP换成你自己的服务器IP

即可弹出jupyter访问界面

展开阅读全文

Jupyter Notebook的主题编码问题

02-10

最近因为jupyter notebook的白色原装界面太难看了,特别是字体。然后,就install nJupyter themes; 一切都OK,themes也下载下来了,进行 jt -l 也是没问题的,正常n显示出了已经有的各个主题了。n最后,进行 jt -t 主题名 启用时,报错了。无法切换主题:nn(C:\Users\Administrator\Anaconda3) C:\Users\Administrator>jt -lnAvailable Themes:n chesterishn grade3n gruvboxdn gruvboxln monokain oceans16n onedorkn solarizeddn solarizedlnn(C:\Users\Administrator\Anaconda3) C:\Users\Administrator>jt -t grade3nTraceback (most recent call last):n File "c:\users\administrator\anaconda3\lib\runpy.py", line 193, in _run_module_as_mainn "__main__", mod_spec)n File "c:\users\administrator\anaconda3\lib\runpy.py", line 85, in _run_coden exec(code, run_globals)n File "C:\Users\Administrator\Anaconda3\Scripts\jt.exe\__main__.py", line 9, in n File "c:\users\administrator\anaconda3\lib\site-packages\jupyterthemes\__init__.py", line 307, in mainn dfonts=args.defaultfonts)n File "c:\users\administrator\anaconda3\lib\site-packages\jupyterthemes\__init__.py", line 103, in install_themen style_css = stylefx.less_to_css(style_less)n File "c:\users\administrator\anaconda3\lib\site-packages\jupyterthemes\stylefx.py", line 63, in less_to_cssn style_css = lesscpy.compile(tempfile)n File "c:\users\administrator\anaconda3\lib\site-packages\lesscpy\__init__.py", line 18, in compilen p.parse(file=file)n File "c:\users\administrator\anaconda3\lib\site-packages\lesscpy\lessc\parser.py", line 154, in parsen file, lexer=self.lex, debug=debuglevel)n File "c:\users\administrator\anaconda3\lib\site-packages\ply\yacc.py", line 331, in parsen return self.parseopt_notrack(input, lexer, debug, tracking, tokenfunc)n File "c:\users\administrator\anaconda3\lib\site-packages\ply\yacc.py", line 1024, in parseopt_notrackn lexer.input(input)n File "c:\users\administrator\anaconda3\lib\site-packages\lesscpy\lessc\lexer.py", line 475, in inputn self.lexer.input(f.read())nUnicodeDecodeError: 'gbk' codec can't decode byte 0x8b in position 44256: illegal multibyte sequencen 问答

没有更多推荐了,返回首页