已安装的软件包在 Google Cloud Shell 中消失了

Sun*_*ny9 1 google-cloud-platform google-cloud-shell

我试图在 Google Cloud Platform Console 中安装一堆 python 包。但是磁盘空间不够,安装失败。有趣的是,在某些时候,网络连接丢失了,我应该重新连接它。

然后我检查了一些已经安装的软件包,然后再尝试安装其他一堆 python 软件包。

期待

$ python
Python 2.7.9 (default, Mar  1 2015, 12:57:24) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
>>> 
Run Code Online (Sandbox Code Playgroud)

但是没有找到numpy。这是实际结果。

$ python 
Python 2.7.9 (default, Mar  1 2015, 12:57:24) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named numpy
>>> 
Run Code Online (Sandbox Code Playgroud)

这是一个已知的问题?我怎样才能防止它再次发生?


重现步骤

  1. 点击顶部栏中的“激活 Google Cloud Shell”图标
  2. 我有两个项目,其中一个项目被选中。
  3. 像这样安装 python-numpy 包:

    Welcome to Cloud Shell! For help, visit https://cloud.google.com/cloud-shell/help.
    $ sudo apt-get install python-numpy
    
    Run Code Online (Sandbox Code Playgroud)
  4. 尝试在 python 提示符下导入 numpy --> 成功导入。

  5. 关闭浏览器的选项卡或只是关闭外壳选项卡

  6. 几个小时后(也许 2 小时后),重新打开 Cloud Shell。

  7. 尝试在 python 提示符下导入 numpy --> “没有名为 numpy 的模块”错误。

Cla*_*rad 5

这是 Google Cloud Shell 的一个已知限制 - 在大约一个小时不活动后,$HOME 之外的任何修改都会丢失,包括已安装的软件包。请参阅自定义安装的软件包和持久性

另请注意有关使用限制的引用:

如果您不定期访问 Cloud Shell,我们可能会回收您的主磁盘。在我们这样做之前,您将收到一封电子邮件通知,只需启动一个会话即可防止其被删除。对于您希望长期存储的敏感数据,请考虑在 Google Cloud Storage 上使用不同的解决方案。