0

我在安装可跨步骤共享的谷歌浏览器时遇到问题。我的 cloudbuild.yaml 看起来像这样:

- name: 'ubuntu'
  args: ['bash', 'tools/download-chrome.sh']
  volumes:
  - name: 'bin'
    path: '/usr/bin'
- name: 'gcr.io/cloud-builders/npm'
  args: ['run', 'install-all-ci']
- name: 'gcr.io/cloud-builders/npm'
  args: ['test']
  volumes:
  - name: 'bin'
    path: '/usr/bin'

第一步下载 chrome,调用which google-chrome返回/usr/bin/google-chrome. 在最后一步中执行相同操作不会返回任何内容。


我还尝试将卷添加到中间的步骤并向上移动该步骤(因为将它放在安装步骤中由于某种原因破坏了 git。我认为/usr/bin由于卷被删除,这不是一个好的共享目录?


尝试 3 正在做类似的事情:

apt-get download -y google-chrome-stable \
      --no-install-recommends \
    && dpkg -i --force-all --root=/workspace/chrome /workspace/google-chrome-stable*.deb \

但我收到以下错误:dpkg: error: unable to access dpkg status area: No such file or directory. 我试过这样做mkdir /workspace/chrome,但这并不能解决问题。

4

1 回答 1

1

我想知道该/usr/bin目录是否已被 docker 映像使用,在这种情况下您可能无法覆盖它?

您可以探索的另一个解决方案是使用 npm 和 chrome 工具创建一个 docker 映像,因此您不必在每次构建时都下载/安装它。

最好的,菲利普

于 2018-12-20T17:35:07.567 回答