Можно ли загрузить все файлы приложения в Cloud Foundry?

Можно ли загрузить файлы приложения на мой локальный компьютер, т.е. выполнить операцию, противоположную "push"?

4 ответа

Решение

Я использую этот простой скрипт для загрузки всех файлов журнала в моем приложении, вы можете настроить его, чтобы получить весь контент в папке приложения

    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

Если ваше приложение успешно завершило подготовку (т. Е. Пакет сборки был запущен и завершен), вы сможете загружать дроплет, созданный CF. Это будет среди прочего содержать код вашего приложения.

Пример:

$ cf app <app-name> --guid
2836d5fe-35f7-4409-b27b-4ed308152bb4
$ cf curl /v2/apps/2836d5fe-35f7-4409-b27b-4ed308152bb4/droplet/download > my-droplet

Смотрите также https://apidocs.cloudfoundry.org/2.6.0/apps/downloads_the_bits_for_an_app.html & http://v3-apidocs.cloudfoundry.org/version/3.50.0/


ОБНОВЛЕНИЕ (13/07/2018)

Есть и сейчас cf local, который является плагином CF Cli, который делает несколько вещей. Одна из вещей, которую он позволяет вам делать - это легко экспортировать и импортировать капли. Это, вероятно, самый простой способ сделать это в будущем.

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

Последние версии cf ( Интерфейс командной строки Cloud Foundry) делает это проще с помощью плагина загрузки: https://github.com/ibmjstart/cf-download

Более подробная информация от одного из авторов на http://blog.ibmjstart.net/2015/05/22/cf-download/

Редактировать Как указал Дхарми, это не работает с бэкэндом Диего https://github.com/ibmjstart/cf-download/issues/12

Хорошо, чувак. У меня была такая же проблема. Самый простой способ - это SCP через SSH.

Чтобы сделать это как можно более простым, я сделал следующие шаги.

В конце концов, я полагаю, что у вас уже был установлен Cf cli в вашей среде. Посмотрите, как это сделать: https://docs.cloudfoundry.org/cf-cli/install-go-cli.html

Теперь, чтобы войти в Cloud Foundry SSH, нам нужно сделать следующее:

  1. Включите ssh в вашем приложении IBM
  2. Получите SSH-хост
  3. Получите пользователя
  4. Получить пароль

Шаг 01 - Включите SSH

См. Официальные ссылки: https://docs.cloudfoundry.org/devguide/deploy-apps/ssh-apps.html

Откройте CMD или напишите терминал:

> cf login - это похоже на бла-бла-бла

> cf enable-ssh имя-приложения

Вы действительно хотите знать название приложения! Это основы...

Шаг 2 - Получите хост сервера

Ну... если мне нужно объяснить, что такое ssh-хост, лучше откатиться отсюда. Если нет, запустите команду (небольшая шутка):

cf curl /v2 / информация

"app_ssh_endpoint": "ssh.MY-DOMAIN.com:2222"

Результат - json с множеством атрибутов. Скопируйте поле под названием "app_ssh_endpoint". Обратите внимание, что после ":" это порт ssh для заполнения формы Winscp или команды терминала.

Шаг 3 - Свяжите свое имя пользователя

Имя пользователя состоит из "cf:" + "GUID" + "/" + "InstanceID".

Чтобы получить GUID, запустите команду терминала:

cf app MY-AWESOME-APP --guid

Вернуть длинный идентификатор, например: abcdefab-1234-5678-abcd-1234abcd1234

Идентификатор экземпляра - это порядковый номер экземпляра вашего приложения. Первый экземпляр приложения становится с "0".

Итак, у нас есть cf:my-guid-result/0 в качестве имени пользователя.

Шаг 4 - Получите временный пароль

На этом шаге используется одноразовый проход. Это! Вы используете только один раз пропуск. Буууут... вы можете выполнять эту команду каждый раз, когда вы подключаетесь к серверу или выполняете команды.

Чтобы получить команду pass run terminal:

cf ssh-код

Вернуть маленький пароль: abcdefab

После этого я рекомендую:

Если вы хотите загрузить целую папку "app /", как я, сожмите ее и загрузите с помощью графического интерфейса winSCP или через терминал с помощью команды "scp".

Это не интуитивно понятно, но это возможно. Желаю удачи.

Я написал этот Ruby Gist некоторое время назад, он все еще должен работать с небольшими изменениями или как есть..

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

Другие вопросы по тегам