运行 EC2 实例上的 IPython 笔记本服务器启动

Running an IPython notebook server on EC2 instance start

我想为个人数据科学项目设置一个 EC2 实例 运行 一个 ipython 笔记本服务器。我可以成功启动服务器并 运行ning,并从我的浏览器等访问它...我正在为我的 OS.

使用 Ubuntu 14.04

但是,因为我想使用一个非常大的实例,所以一直保留它 运行ning 会变得非常昂贵,所以我希望能够在我不这样做时启动和停止它不需要它。目前,这意味着每次启动时我都需要通过 ssh 进入实例并重新启动服务器。当实例启动时,我想要一些方法 运行 ipython notebook --profile=nbserver,这样我就可以启动实例并立即从我的浏览器访问我的服务器。

我放

#!/bin/bash
ipython notebook --profile=nbserver

在用户数据中,但这似乎不起作用。关于用户数据脚本是 运行 仅在首次启动时还是实例启动时,我无法找到明确的答案。

是否有其他地方可以放置该脚本,以便在我启动实例时它会 运行?

Here's what the AWS documentation says about cloudinit being at launch or start,突出显示我的:

a set of cloud-init directives that executes when the instance launches ... Important: User data scripts and cloud-init directives only run during the first boot cycle when an instance is launched.

在每次启动时启动某些内容的最简单方法是在 rc.local 中添加行。 Here's an example from a Whosebug question;当然有更好的方法来做到这一点(例如,如果笔记本由于某种原因死机,它会自行重启),但这足以开始了。