如何在谷歌云构建中将参数传递给 docker run

Posted

技术标签:

【中文标题】如何在谷歌云构建中将参数传递给 docker run【英文标题】:How to pass parameters to docker run in google cloud build 【发布时间】:2021-05-15 14:04:57 【问题描述】:

我正在尝试使用 GCB 运行 cypress 管道,但在 docker 中运行时它会崩溃。

如here 所述,此问题的修复方法是使用--ipc=host 运行docker。

但是查看文档,我找不到如何在 GCB 中将参数传递给 docker run。

谁能帮帮我?

管道是

steps:
# Install node_modules
- name: 'gcr.io/cloud-builders/yarn'
  args: ['install']
# Lint JS
- name: 'gcr.io/cloud-builders/yarn'
  args: ['lint']
# Unit tests
- name: 'gcr.io/cloud-builders/yarn'
  args: ['test:unit', '--coverage']
# E2E tests (cypress dependencies required, see https://github.com/GoogleCloudPlatform/cloud-builders-community/pull/485)
- name: 'gcr.io/$PROJECT_ID/cypress-dependencies'
  args: ['test:e2e', '--headless', '--config', 'video=false']

【问题讨论】:

见:github.com/GoogleCloudPlatform/cloud-builders/tree/master/… 你能分享你的管道吗? @guillaumeblaquiere 添加到主帖中 【参考方案1】:

您可以尝试这样做。我不知道它是否会起作用,因为您在容器中运行容器,但请尝试您的最新步骤

  - name: gcr.io/cloud-builders/docker
    entrypoint: 'bash'
    args:
      - -c
      - |
         docker run --ipc=host gcr.io/$PROJECT_ID/cypress-dependencies \
            test:e2e --headless --config video=false

【讨论】:

以上是关于如何在谷歌云构建中将参数传递给 docker run的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Delphi 2010 中将参数传递给 flash 电影?

将参数传递给build.gradle

如何在django中将多个参数传递给url

如何在 Flutter 中将参数传递给动作

如何从类定义中将参数传递给元类?

在 Eclipse(Pydev) 中将命令行参数传递给 Python 脚本