2015-09-09 1 views
3

Я деполировал приложение с развертыванием приложения gcloud.gcloud: как загрузить приложение через cli

Есть ли способ загрузить его на другой локальный компьютер? Как я могу получить файлы? Я пробовал через SSH без успеха (не может получить доступ к Docker реж)

UPDATE: Я нашел это:

gcloud preview app modules download default --version 1 --output-dir=my_dir 

но это не загружая файлы

Вход

Downloading module [default] to [my_dir/default] 
Fetching file list from server... 
|- Downloading [0] files...         -| 
+0

'gcloud preview app modules download' является артефактом AppEngine старого стиля (то есть не с Docker). Он не будет работать с приложениями в стиле докеров. (У нас есть эта функциональность, но в то время как 'gcloud app' находится в режиме предварительного просмотра, все будет пятнистым). –

ответ

1

В настоящее время лучший способ сделать это - вытащить файлы из Docker.

Put экземпляр в самоуправляемых режиме, так что вы можете SSH в него:

$ gcloud preview app modules set-managed-by default --version 1 --self 

Найдите имя экземпляра:

$ gcloud compute instances list | grep gae-default-1 

Скопируйте его из Докер контейнера, изменения разрешений и скопируйте их на свой локальный компьютер:

$ gcloud compute ssh --zone=us-central1-f gae-default-1-1234 'sudo docker cp gaeapp:/app /tmp' 
$ gcloud compute ssh --zone=us-central1-f gae-default-1-1234 "chown -R $USER /tmp/app" 
$ gcloud compute copy-files --zone=us-central1-f gae-default-1-1234:/tmp/app /tmp/ 
$ ls /tmp/app 
Dockerfile 
[...] 
+0

Спасибо за помощь Захари! Я получаю SSH таймаут :( gcloud вычислить SSH --zone = мы-central1-с GAE-умолчанию-1-g5ol 'Судо докер ф gaeapp:/приложение/TMP' SSH: подключиться к хосту 104.154 .73.30 порт 22: время ожидания операции ОШИБКА: (gcloud.compute.ssh) [/ usr/bin/ssh] вышло с кодом возврата [255]. См. Https://cloud.google.com/compute/docs/troubleshooting #ssherrors для подсказок по устранению неполадок. –

+0

Что произойдет, если вы попытаетесь выполнить одно и то же с помощью [Cloud Console] (https://cloud.google.com/console) (Compute> AppEngine> экземпляров), затем найдите имя экземпляра, запускающего версию приложения, которое вы хотите, и нажмите SSH)? –

+0

Вау, это работает :)))) Я очень счастлив –

6

Я прихожу к Google App Engine после двух лет, я вижу, что они сделали много улучшений и добавили множество функций. Но, к сожалению, их документация иногда оставляет желать лучшего.

Я использовал, чтобы загрузить мой код загружаемой версии с appcfg.py

с помощью следующей команды.

appcfg.py download_app -A <app_id> -V <version> <output-dir>

Но теперь, конечно, они завершились все в оболочке gcloud где appcfg.py не доступен.

Насколько я понял, следующий метод помог мне загрузить развернутый код.

  1. Перейдите на консоль и в Google App Engine.
  2. Выберите проект, с которым хотите работать.

  3. После того, как откроется панель инструментов проекта, нажмите на верхнюю правую сторону, чтобы открыть окно встроенного консольного окна .

    enter image description here

  4. Который должен загрузить облако оболочки в нижней части, теперь, если вы проверить appcfg.py доступна использовать в этой VM.

    enter imagedescription her[2]

  5. Следовательно, использовать appcfg.py download_app -A <app_id> -V <version> <output-dir> для загрузки кода.

  6. Теперь, как только у вас есть код в нужную папку, чтобы загрузить его на локальном компьютере - Вы можете открыть редактор докер кода

    enter image description here

  7. Теперь здесь я предполагал, если я rightclicked и экспортировать нужную папку она будет работать,

    enter image description here

    , но вместо этого он дал мне следующую ERR или сообщение.

    {"Error":"'concurrency' must be a number but it is [object Undefined]","Message":"'concurrency' must be a number but it is [object Undefined]"} 
    
  8. Итак, я подумал, что он будет играть вместе хорошо, если папка был архив. Вернитесь к облачной оболочке и с использованием любых утилиты вы представляете себе сделать архив в папку

    zip -r mycode.zip mycode 
    
  9. Перейти к докер редактор кода, экспорта и загрузки.

    enter image description here

Сейчас. Конечно, есть много способов сделать это (надеюсь), но это то, что имело смысл для меня после возвращения в Google App Engine через 2 года.