我在安装可以跨步骤共享的Google Chrome时遇到了问题。我的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
,但不能解决问题。
答案 0 :(得分:1)
我想知道/usr/bin
目录是否已被docker镜像使用,在这种情况下您可能无法覆盖它?
您可以探索的另一种解决方案是同时使用npm和chrome工具创建一个docker映像,因此您不必在每个版本上都下载/安装它。
最好, 菲利普