Услуги и env в файле манифеста? - PullRequest
0 голосов
/ 06 ноября 2019

У меня есть веб (онлайн-калькулятор для примера), который был разработан моими коллегами. Теперь они хотят развернуть в PCF, используя манифесты.

Используемые языки: python, php и javascipt.

Я просмотрел документы о pcf с manifest.yml

. Я понятия не имею об услугах и окружении.

Что это за услуги и как я могу найти службы для вышеуказанного проекта, а также как найти переменные среды?

Иукажите, являются ли эти поля обязательными для запуска проекта в PCF.

1 Ответ

0 голосов
/ 07 ноября 2019

На ваш первоначальный вопрос:

Не могли бы вы, ребята, помочь мне, что это за сервисы и как я могу найти сервисы для вышеуказанного проекта, а также как я могу найти переменные среды ... И скажите, являются ли эти поля обязательными для запуска проекта в pcf ...

Требуются ли вашему приложению какие-либо службы для запуска? Сервисами могут быть такие вещи, как база данных или очередь сообщений. Если это не так, вам не нужно указывать какие-либо службы в манифесте. Они являются необязательными.

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

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

В отношениина ваши дополнительные вопросы:

1) А также у меня есть еще один запрос ... как в нашем приложении мы использовали python хорошо! В этом мы используем множество pacakages, например, pandas, numpy, scipy и так далее ... как я могу импортировать все библиотеки в PCF ??? Buildpacks будет содержать только версию, верно?

Правильно. В buildpack входит только сам Python. Ваши зависимости либо должны быть установлены или проданы. Чтобы сделать это для Python, вам нужно включить файл requirements.txt. Пакет сборки увидит это и использует pip для установки ваших зависимостей.

См. Документы для пакета сборки Python, которые объясняют это более подробно: https://docs.cloudfoundry.org/buildpacks/python/index.html#pushing_apps

2) Итакже скажите мне, каким будет путь к имени моего приложения, если на Java я могу заключить jar-файлы

Для приложений Java вам нужно отправить скомпилированный код. Это означает, что вам нужно запустить что-то вроде mvn package или gradle assemble, чтобы создать исполняемый файл JAR или WAR. Это должен быть автономный файл, в котором есть все необходимое для запуска вашего приложения, компиляции файлов классов, конфигурации и всех зависимых файлов JAR.

Затем вы запускаете cf push -p path/to/my-app.jar (или WAR, что бы вы ни собирали). Cf Cli возьмет все в приложении и отправит его в Cloud Foundry, где Java buildpack установит такие вещи, как JVM и, возможно, Tomcat, чтобы ваше приложение могло работать.

что я должен сделать для приложенияразработано с использованием pyhton, JavaScript и php ....

Вы можете использовать несколько пакетов сборки. См. Инструкции здесь.

https://docs.cloudfoundry.org/buildpacks/use-multiple-buildpacks.html

Короче говоря, вы можете иметь столько пакетов, сколько захотите. Последний пакет сборки в списке особенный, потому что это пакет сборки, который будет устанавливать команду запуска для вашего приложения (хотя вы можете переопределить это с помощью cf push -c, если необходимо). Не финальные пакеты сборки будут запускаться и просто устанавливать зависимости.

3) мы использовали postgresql, как я могу использовать это в pcf с моим приложением

Run cf marketplaceи посмотрите, есть ли на вашей торговой площадке поставщики Postgres. Если он есть, вы можете просто набрать cf create-service <provider> <plan> <service name>, и фонд создаст базу данных для использования. Затем вы должны запустить cf bind-service <app> <service name>, чтобы связать созданную вами службу с вашим приложением. Это создаст учетные данные и передаст их вашему приложению при запуске. Затем ваше приложение может считывать учетные данные из VCAP_SERVICES и использовать их для подключения к базе данных.

Подробнее см. Здесь:

Надеюсь, это поможет!

...