我想在启动时将我的存储桶的内容复制到带有Container Optimized OS的VM。当服务器关闭时,我想将更改保存回桶中。
我试过制作一个启动脚本
#!/bin/bash
toolbox
gsutil cp -r gs://my-bucket/
但是,如果我手动运行该脚本,则会导致VM在启动时失败。
我想我找到了一个合理的解决方案。我的脚本已更改为
#! /bin/bash
toolbox --bind=/home/username/bucket-folder:/my-bucket <<< "gsutil cp -r /my-bucket/* gs://my-bucket"
那么我们需要调用toolbox --bind将文件夹从服务器绑定到工具箱容器。然后我们使用<<<在启动时将整个命令传递给容器,因此我们将其复制到新绑定的目录,以便返回到服务器。
现在当我绑定我的docker容器中的目录时,一切都在那里!
我刚尝试过:
#! /bin/bash
gsutil cp -r gs://my-bucket /
它对我有用。您之前执行的toolbox
命令是什么?
无论如何,你可以看到Serial Port Output失败了什么。
编辑:在Container Optimized OS这不起作用,因为这个操作系统没有gsutil包preinstalled
。请参阅@DanBaba answer。