是否可以在Cloud Foundry中下载应用程序的所有文件?

时间:2014-01-29 03:30:59

标签: cloudfoundry

是否可以将应用程序文件下载到我的本地PC,即执行与“推送”相反的操作?

5 个答案:

答案 0 :(得分:9)

cfCloud Foundry's command line interface)的最新版本使用下载插件https://github.com/ibmjstart/cf-download

使这更简单

其中一位作者http://blog.ibmjstart.net/2015/05/22/cf-download/

的更多细节

修改 正如Dharmi所指出的,这与迭戈后端https://github.com/ibmjstart/cf-download/issues/12

无关

答案 1 :(得分:7)

我使用这个简单的脚本下载我的应用程序中的所有日志文件,您可以调整它以获取应用程序文件夹中的所有内容

    mkdir -p <appName>/app/data/logs
    for i in `cf files <appName> app/data/logs | awk '{print $1}'`; 
    do cf files <appName> app/data/logs/$i > <appName>/app/data/logs/$i; done

答案 2 :(得分:7)

只要您的应用程序成功完成分段(即运行并完成构建包),您就应该能够下载由CF构建的Droplet。这将包含您的应用程序代码。

例如:

cf local

另见https://apidocs.cloudfoundry.org/2.6.0/apps/downloads_the_bits_for_an_app.html&amp; http://v3-apidocs.cloudfoundry.org/version/3.50.0/#download-package-bits

更新(7/13/2018)

现在还有str.replace(/\|/g, "") ,它是一个cf cli插件,可以执行多项操作。它允许您做的一件事就是轻松导出和导入液滴。这可能是最简单的方法。

https://github.com/cloudfoundry-incubator/cflocal

答案 3 :(得分:1)

好的,伙计。我也遇到了麻烦最简单的方法是通过SSH的SCP。

为使这一点更简单,我将按照以下步骤进行操作。

毕竟 我认为您已经在环境中安装了“ Cf cli”。 查看操作方法:https://docs.cloudfoundry.org/cf-cli/install-go-cli.html

现在要登录Cloud Foundry SSH,我们有一些事情要做:

  1. 在您的IBM应用程序中启用ssh
  2. 获取SSH主机
  3. 获取用户
  4. 获取密码

步骤01-启用SSH

请参阅以下官方参考:https://docs.cloudfoundry.org/devguide/deploy-apps/ssh-apps.html

打开CMD或终端写入:

  

> cf登录-就像bla bla bla

     

> cf enable-ssh应用程序名称

     
    

您真的想知道应用名称!这是基础...

  

第2步-获取服务器主机

好吧...如果我必须解释什么是ssh主机,最好从这里回滚。如果没有,请运行命令(开个小玩笑):

  

cf curl / v2 / info

     
    

“ app_ssh_endpoint”:“ ssh.MY-DOMAIN.com:2222”

         
      

结果是具有许多属性的json。       复制名为“ app_ssh_endpoint”的字段。       看看“:”之后是用于填写Winscp表单或终端命令的ssh端口。

    
  

第3步-连接您的用户名

用户名由“ cf:” +“ GUID ” +“ /” +“ InstanceID ”组成。

要获取GUID,请运行终端命令:

  

cf应用程序MY-AWESOME-APP --guid

     
    

返回一个长ID,例如:abcdefab-1234-5678-abcd-1234abcd1234

  

实例ID是您的应用实例的序号。第一个应用程序实例的名称为“ 0 ”。

所以我们有 cf:my-guid-result / 0 作为用户名。

第4步-获取临时密码

此步骤检索一次使用通行证。这是!您只能使用一次通行证。 Buuuut ...您可以在每次连接到服务器或执行命令时执行此命令。

要获取通过运行终端命令:

  

cf ssh代码

     
    

返回小密码:abcdefab

  

在此之后,我建议:

如果您希望像我一样下载整个“ app /”文件夹,请压缩它,然后使用winSCP图形界面或通过终端使用“ scp”命令进行下载。

这不是很直观,但是可以做到的。祝你好运。

答案 4 :(得分:0)

我曾经写过这篇Ruby Gist,它应该仍然适用于少量的调整或者原样。

https://gist.github.com/danhigham/4705713