这是我的存储库中的.gitlab-ci.yml文件:
image: docker
#services:
# - docker:dind
stages:
- build
- deploy
build-prod:
stage: build
only:
- master
tags:
- docker
script:
- docker network create -d overlay reprox
environment: master
deploy-prod:
stage: deploy
only:
- master
tags:
- docker
script:
- docker stack deploy -c ./site1/docker-compose.yml site1
- docker stack deploy -c ./site2/docker-compose.yml site2
- docker stack deploy -c ./site3/docker-compose.yml site3
- docker stack deploy -c ./reverse-proxy/docker-compose.yml proxy
environment: master因此,我的设置是1个管理器和2个工作节点,我只需要在管理器节点上运行构建和部署作业,其他节点只需要拥有存储库,而不需要在工作节点上运行bash命令。
我添加了一个带有"docker“标签的manager runner和带有"runner”标签的worker节点。
发布于 2019-10-18 22:29:51
删除您的docker标签。您可以将工作人员配置为work only on specific tags
job1:
tags:
- dockernode_1
job2:
tags:
- dockernode_2您以前使用的docker标记可能只是一种变通方法(或来自教程),以使runners在所有作业上都能工作。如果你不想让跑步者关心标签,你可以让他pick up all available jobs。
https://stackoverflow.com/questions/58452825
复制相似问题