Мое веб-приложение работает в Google Cloud Platform, в последнее время я понял, что время сборки приложения занимает очень много времени, особенно когда вы тестируете функцию, скажем, обновляете страницу, вы можете видеть, что запуск приложения занимает очень много времени. Я ищу способ ускорить этот процесс. Я использую образы докеров для создания облачного реестра Google. Я не хочу каждый раз заново собирать все пакеты npm, когда в некоторых пакетах npm есть обновление, тогда я хочу пересобрать приложение.
вот мой файл cloudbuild.yaml для полимера
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', 'gcr.io/$PROJECT_ID/myapp-polymer', '.' ]
images:
- 'gcr.io/$PROJECT_ID/myapp-polymer'
тогда вот мой основной файл cloudbuild.yaml
steps:
- name: 'gcr.io/cloud-builders/npm'
args: ['--prefix', 'myapp','install']
- name: 'gcr.io/cloud-builders/npm'
args: ['--prefix', 'myapp/functions', 'install']
- name: 'gcr.io/$PROJECT_ID/myapp-polymer'
args: ['cd', 'myapp']
- name: 'gcr.io/$PROJECT_ID/myapp-polymer'
args: ['build']
Я читал Google Cloud API, особенно раздел «Ускорение ваших сборок» (https://cloud.google.com/cloud-build/docs/speeding-up-builds)
Я думаю, что он просто кеширует образы сборки и использует их. Есть ли способ, которым я могу кэшировать конкретно пакеты npm, зависимости и т. Д. В Google Cloud, чтобы мне не приходилось каждый раз создавать целое приложение? Моя основная цель - сократить время сборки, ускорить процесс сборки.
Спасибо!