我正在尝试构建 docker 映像并推送到 gitlab 注册表。
我正在使用 gitlab-shared runner。
npm install 没有问题,但是如何在下一个工作中构建 docker 镜像?
image: node:14.17.3
stages:
- install
- build
install_dependencies:
stage: install
tags:
- gitlab-org-docker
script:
- pwd
- npm install
build-job:
stage: build
image: docker
tags:
- gitlab-org-docker
script:
- echo "Compiling the code..."
- echo "build"
- docker build -t bmw-frontend-app .
- docker ps
我忘了dind。dind 在 Docker 中是 Docker 的意思。
我成功如下。
image: docker:19.03.13
cache:
key: ${CI_COMMIT_REF_SLUG}
paths:
- node_modules/
- .next/
stages:
- build
services:
- docker:19.03.13-dind
build-job:
stage: build
before_script:
- echo docker login $DOCKER_REGISTRY --username $DOCKER_REGISTRY_USER --password-stdin
tags:
- gitlab-org-docker
script:
- echo "Compiling the code..."
- echo "build"
- docker build -t registry.gitlab.com/areum.lee1/bmwgs_frontend .
- docker login registry.gitlab.com -u $DOCKER_REGISTRY_USER -p $DOCKER_REGISTRY_PASS
- docker push registry.gitlab.com/areum.lee1/bmwgs_frontend
- 我将外部图像修改为图像:docker:19.03.12
- 附加服务块。