在AWS EC2上实现远程运行JupyterNotebook

在AWS EC2上实现远程运行JupyterNotebook

  首先,在AWS的Console中启动一个实例,详细步骤略,关键步骤如1、2所示。

1、使用的AMI

AMI

2、安全组设置

入站设置:
入站
出站设置:
出站

3、配置Jupyter

  由于AMI中已提供Anaconda以及JupyterNotebook,对Jupyter直接进行配置

生成Jupyter的配置文件:

jupyter notebook --generate-config

运行Python终端

>>from notebook.auth import passwd 
>>In [2]: passwd() 
Enter password: 
Verify password: 
Out[2]:'sha1:ce23d945972*********63968a41f1140274’

修改配置文件jupyter_notebook_config.py

vim /home/ubuntu/.jupyter/jupyter_notebook_config.py

在Vim中输入“/+你想查找的内容即可实现快速定位”
例:/App.ip

c.NotebookApp.ip='*' # 就是设置所有ip皆可访问
c.NotebookApp.password = u'sha:ce...刚才复制的那个密文'
c.NotebookApp.open_browser = False # 禁止自动打开浏览器
c.NotebookApp.port =8888 #可指定一个端口
c.NotebookApp.notebook_dir = '/home/ubuntu' #设置主目录

启动JupyterNotebook

nohup jupyter notebook  &  #nohup是用来防止退出shell关闭jupyter运行,&进行后台运行

发现使用服务器的ip:8888并打不开Jupyter,安全组的设置也没有问题,这里使用nginx将Notebook的8888端口代理到外网的80端口上

4、nginx安装与配置

>> sudo apt install nginx
>> sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

设置代理需修改nginx的配置

>> vim /etc/nginx/nginx.conf

在http下加上这样一段json

	server {
		server_name your_domain; # 服务器域名
		listen 80;

		location / {
			proxy_pass http://127.0.0.1:8888/;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Real-Scheme $scheme;
			proxy_set_header Host $host;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

			proxy_http_version 1.1;
			proxy_set_header Upgrade $http_upgrade;
			proxy_set_header Connection "upgrade";
			proxy_redirect off;
			proxy_read_timeout 120s;
			proxy_next_upstream error;
    }
}

再次运行JupyterNotebook,访问你的domain,即可在自己的浏览器上使用Jupyter了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一个部署 Node.js 服务于 AWS EC2 实例上的简单步骤: 1. 创建 AWS EC2 实例并连接到实例上: 首先,您需要在 AWS 上创建 EC2 实例并连接到实例。您可以使用 SSH 客户端连接到实例。对于 Windows 用户,可以使用 PuTTY 连接到实例。 2. 安装 Node.js: 在连接到实例后,请使用以下命令在 EC2 实例上安装 Node.js: ```bash sudo apt-get update sudo apt-get install nodejs sudo apt-get install npm ``` 3. 上传并运行服务: 将您的 Node.js 服务文件上传到 EC2 实例上。您可以使用 scp 命令将文件从本地系统上传到 EC2 实例上: ```bash scp -i <your-key-pair>.pem app.js ubuntu@<public-dns-name>:~/ ``` 接下来,您可以在 EC2 实例上运行您的 Node.js 服务,使用以下命令: ```bash node app.js ``` 4. 使用 Nginx 部署 Node.js 服务: 为了更好的性能和安全性,建议使用 Nginx 部署您的 Node.js 服务。 首先,安装 Nginx: ```bash sudo apt-get install nginx ``` 然后,配置 Nginx 以反向代理 Node.js 服务。在 /etc/nginx/sites-available/default 文件中,添加以下配置: ```nginx server { listen 80; server_name example.com; location / { proxy_pass http://localhost:3000; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_cache_bypass $http_upgrade; } } ``` 保存并关闭该文件,然后重启 Nginx 服务: ```bash sudo service nginx restart ``` 现在,您的 Node.js 服务已经通过 Nginx 部署在 AWS EC2 实例上了。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值