Google云构建遇到“无法满足的约束”错误(本地构建图像)

时间:2018-08-09 06:01:23

标签: docker google-cloud-platform mariadb build-triggers google-cloud-build

我的Dckerfile

FROM python:3.7-alpine

ADD requirements.txt /code/requirements.txt

RUN apk --no-cache add --virtual build-dependencies \
  build-base \
  py-mysqldb \
  gcc \
  libc-dev \
  libffi-dev \
  mariadb-dev \
  && pip install -r /code/requirements.txt \
  && rm -rf .cache/pip \
  && apk del build-dependencies

RUN apk -q --no-cache add mariadb-client-libs

COPY . /code
...

我能够在本地生成图像。

但是当google(云构建)尝试构建图像时,出现以下错误:

...
(28/28) Purging python2 (2.7.15-r0)
Executing busybox-1.28.4-r0.trigger
OK: 17 MiB in 34 packages
Removing intermediate container bc1fb0b1da92
---> bf2c564de5a5
Step 4/7 : RUN apk -q --no-cache add mariadb-client-libs
---> Running in 9c4fcad1f632
ERROR: unsatisfiable constraints:
**mariadb-client-libs (missing):**
required by: world[mariadb-client-libs]
The command '**/bin/sh -c apk -q --no-cache add mariadb-client-libs**' returned a non-zero code: 1
ERROR
ERROR: build step 0 "gcr.io/cloud-builders/docker" failed: exit status 1

在线快速搜索显示repo could be offline,但我怀疑情况确实如此。似乎Google Cloud构建阻止了对存储库的访问。还有其他人遇到这个问题吗?关于如何解决此问题的任何指示?

1 个答案:

答案 0 :(得分:1)

根据@helado的建议,我从上方发布我的评论作为答案:

@helado:我对将其发布为答案感到犹豫,因为它是绕过该问题的解决方案。但我认为更重要的一点是,这样的问题不应阻止人们取得进步:)

----从上方复制粘贴的注释----

  

当我尝试在本地构建时,它对我有用,但在Google上失败   云。另外,它不是解决问题的正确方法,但是我   将我的依存关系形式mariadb-client-libs切换为py-mysqldb,   现在一切正常。以防万一它对您有帮助:)