我是Gitlab和CI / CD的新手。我的CI管道存在一些运行时问题,该过程大约需要20分钟才能完成构建过程。搜索后:
https://blog.sparksuite.com/7-ways-to-speed-up-gitlab-ci-cd-times-29f60aab69f9
https://docs.gitlab.com/ee/ci/caching/
我想在推送给缓存的注册表容器中使用映像,以减少构建时间。我在gitlab-ci.yml上编写的代码是:
build_dev:
stage: build
image: docker:git
services:
- docker:dind
script:
- docker login $CI_REGISTRY -u gitlab-ci-token -p $CI_JOB_TOKEN
# - docker build -f .$DOCKERFILE_PATH/Dockerfile -t $IMAGE_NAME:$CI_COMMIT_REF_SLUG .
- docker build --cache-from $CONTAINER_IMAGE:latest --tag $CONTAINER_IMAGE:$CI_COMMIT_SHA --tag $CONTAINER_IMAGE:latest .
- docker push $IMAGE_NAME:$CI_COMMIT_REF_SLUG
only:
- develop
请告诉我是否:
我正以正确的方式处理我的问题?
我写到gitlab-ci.yml的代码正确吗?
管道完成后,是否将创建新图像?如果是这样,我可以将该新映像上传到以下CI / CD的注册表中吗?