Luk*_*ggy 10 google-cloud-build google-cloud-run
I\xc2\xb4m 尝试将我的 Angular 应用程序进行 dockerize 以用于 Cloud Run,然后根据环境变量使用生产或开发配置有条件地构建它。
\n云构建命令:
\ngcloud builds submit --tag gcr.io/project-id/image-id --timeout=1200
Dockerfile:
\nFROM node:14\n\nWORKDIR usr/src/app\n\nCOPY package*.json ./\n\nRUN npm install\n\n# Copy local code to the container\nCOPY . .\n\n# Build app\nRUN if [ "$ENV" = "development" ] ; then npm run build-dev:ssr ; else npm run build-prod:ssr ; fi\n\nCMD ["npm", "run", "serve:ssr"]\nRun Code Online (Sandbox Code Playgroud)\n目前,$ENV\xc2\xb4t 不存在,但是有没有办法通过命令传递它gcloud build submit?
gui*_*ere 13
您无法像使用 docker build 命令那样传递构建参数。为此,您需要创建一个简单的 Cloud Build 文件
steps:
- name: 'gcr.io/cloud-builders/docker'
args: [ 'build', '-t', 'gcr.io/project-id/image-id', '--build-arg=ENV=$_MY_VARIABLE', '.' ]
# push the container image to Container Registry
- name: 'gcr.io/cloud-builders/docker'
args: ['push', 'gcr.io/project-id/image-id']
images:
- 'gcr.io/project-id/image-id'
timeout: 1200s
substitutions:
_MY_VARIABLE: default value if not passed in the build command
Run Code Online (Sandbox Code Playgroud)
像这样运行它
gcloud builds submit --substitutions=_MY_VARIABLE=specific_value
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10602 次 |
| 最近记录: |