gitlab-ci和rancher残留图像

时间:2018-06-27 19:41:41

标签: docker gitlab gitlab-ci gitlab-ci-runner rancher

我正在使用gitlab-ci服务器(已启用注册表)。

每次在master分支上合并某些内容时,我都会构建一个包含我所有源代码的docker映像。

接下来,此映像将部署在rancher服务器上。

这是我的.gitlab-ci.yml文件的摘录:

variables:
      CONTAINER_TEST_IMAGE: mypersonnalgitlabserver.com:5005/myname/myproject:$CI_BUILD_REF_NAME
...
build:
  ...
  script:
     - docker build --cache-from=$CONTAINER_TEST_IMAGE --file=Dockerfile --tag=$CONTAINER_TEST_IMAGE .
     - docker login -u gitlab-ci-token -p "$CI_BUILD_TOKEN" $CI_REGISTRY
     - docker push $CONTAINER_TEST_IMAGE
...
deploy:
   image: cdrx/rancher-gitlab-deploy
   variables:
     GIT_STRATEGY: none
   script:
      - upgrade --stack mystack --service myservice --no-start-before-stopping --no-wait-for-upgrade-to-finish

一切正常:当我在源代码上进行更改时,如果将其推送到master分支,则可以在生产牧场主服务器上看到更新。

但是我可以通过以下命令看到很多图像和容器:

docker images -a
docker ps -a

每次我向master推入某些东西时,这些图像和容器都在增长。我在gitlab-ci服务器和rancher服务器上遇到相同的问题。

所以我的问题是:如何自动删除那些图像和容器?

谢谢

1 个答案:

答案 0 :(得分:0)

如果这是rancher版本1.x,请在目录中查找并查看名为“ Janitor”的项目是否有帮助。我们用它删除了构建代理遗留下来的图像。