Как развернуть приложение PHP + Webpack на GAE

У меня есть приложение PHP + React JS, которое я пытаюсь развернуть с помощью Google App Engine Standard. Я установил app.yaml для использования php73, хотя я использую Webpack для упаковки JS через пряжу (на самом деле, используя Symfony Encore, но это не имеет значения).

В настоящее время я использую веб-пакет локально и загружаю эти файлы в GAE в качестве обходного пути, но я бы предпочел, чтобы они были упакованы в самом GAE. Могу ли я как-то выполнить команды оболочки для gcloud app deploy, чтобы пряжа выполняла нужные мне сценарии? Нужно ли создавать отдельную службу с запущенным nodejs, чтобы он выполнял package.json скрипты, а затем развертывать службы PHP и nodejs?


person BLaZuRE    schedule 01.12.2019    source источник


Ответы (1)


Вы можете выполнить пользовательские шаги сборки в Google. App Engine, добавив скрипт gcp-build в файл package.json.

Пример:

  "scripts": {
    "prepare": "npm run gcp-build",
    "pretest": "npm run gcp-build",
    "test": "repo-tools test app -- index.js",
    "posttest": "npm run lint",
    "lint": "tslint -p .",
    "start": "node ./index.js",
    "gcp-build": "tsc -p .",
    "deploy": "gcloud app deploy"   }

Также вы можете настроить среду выполнения на установку определенных зависимостей, используя yarn, используя yarn add PACKAGE, чтобы файл «yarn.lock» генерировался автоматически. Если App Engine обнаружит «yarn.lock» в каталоге приложения, Yarn будет использоваться для выполнения установки npm.

Я также рекомендую вам ознакомиться со следующими учебными пособиями сообщества:

Помимо проверки кода демонстрационного приложения Symfony, это может быть хорошим примером.

person Waelmas    schedule 02.12.2019