小编Ped*_*art的帖子

使用 Dockerfile 上的卷进行 Google Cloud Build

我正在尝试为我的应用程序构建构建管道,并使用卷在步骤之间共享特定文件夹。

问题是因为在我的第一步(单元测试)中,我必须安装requirements.txt 上的所有库才能运行我的单元测试。之后,我必须在其他步骤中构建运行 Dockerfile 的应用程序。我不想再次重新安装所有要求,因此,我想复制已安装的要求并将其粘贴到 docker 构建步骤中。我能做到吗?我遵循这个线索并尝试复制到我的现实中,但我仍然遇到问题。

将文件从 Google Cloud Container Builder 传递到 Docker 构建任务

这是我所做的示例:

我的cloudbuild.yaml:

- id: unit-tests
  name: python:3-alpine
  entrypoint: sh
  dir: my-dir
  args:
    - -c
    - |
      apk add --virtual build_dependencies build-base
      apk add --no-cache libstdc++
      pip install --no-cache-dir -r requirements.txt
      apk del build_dependencies
      python -m unittest discover --verbose
      cp -Rv /usr/local/lib/python3.8/site-packages/* /requirements
  volumes:
    - name: 'requirements'
      path: /requirements

- id: docker-build
  name: gcr.io/cloud-builders/docker
  dir: my-dir
  args:
  - build
  - --tag=gcr.io/${PROJECT_ID}/eta:test
  - '.'
  volumes: …
Run Code Online (Sandbox Code Playgroud)

build python-3.x docker google-cloud-build

6
推荐指数
1
解决办法
2538
查看次数

标签 统计

build ×1

docker ×1

google-cloud-build ×1

python-3.x ×1