有哪些开源的码头工人工具

介绍

今天就跟大家聊聊有关有哪些开源的码头工人工具,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。


瞭望塔监视运行容器并监视这些容器最初启动时的镜像有没有变动。当瞭望塔检测到一个镜像已经有变动时,它会使用新镜像自动重新启动相应的容器。我想在我的本地开发环境中尝试最新的构建镜像,所以使用了它。

瞭望塔本身被打包为码头工人镜像,因此可以像运行任何其他容器一样运行它。要运行瞭望塔,你需要执行以下命令:

docker  run  -d ——name  watchtower ——rm  -v /var/运行/docker.sock:/var/运行/docker.sock  v2tec/watchtower ——interval  3

在上面的命令中,我们使用一个挂载文件/var/run/docker.袜子启动了瞭望塔容器。这么做是有必要的,为的是使瞭望塔可以与码头工人守护API进行交互。我们将30秒传递给间隔选项间隔。此选项定义了瞭望塔的轮询间隔.Watchtower支持更多的选项,你可以根据文档中的描述来使用它们。

我们现在启动一个瞭望塔可以监视的容器。

docker  run  -p  4000:80 ——name  friendlyhello  shekhargulati/friendlyhello:最新

现在,瞭望塔将开始温和地监控这个friendlyhello容器。当我将新镜像推送到码头工人中心时,瞭望塔在接下来的运行中将检测到一个新的可用的镜像。它将优雅地停止那个容器并使用这个新镜像启动容器。它将传递我们之前传递给这条运行命令的选项。换句话说,该容器将仍然使用4000:80发布端口来启动。

默认情况下,瞭望塔将轮询码头工人中心注册表以查找更新的镜像。通过传递环境变量REPO_USER和REPO_PASS中的注册表凭据,可以将瞭望塔配置为轮询私有注册表。

要了解更多瞭望塔的相关信息,建议你阅读瞭望塔文档https://github.com/v2tec/watchtower/blob/master/README.md

GitHub地址:https://github.com/v2tec/watchtower

docker-gc(容器和镜像的垃圾回收)

docker-gc工具通过删除不需要的容器和镜像来帮你清理码头工人主机。它会删除存在超过一个小时的所有容器。此外,它还删除不属于任何留置容器的镜像。

你可以将docker-gc作为脚本和容器来使用。我们将以容器的形式运行docker-gc。若要使用docker-gc来查找所有可以删除的容器和镜像,命令如下:

docker  run ——rm  -v /var/运行/docker.sock:/var/运行/docker.sock  -e  DRY 运行=1,spotify/docker-gc

上述命令中,我们加载了码头工人。sock 文件,以便 docker-gc 能够与 Docker API 交互。我们传递了一个环境变量 DRY_RUN=1 来查找将被删除的容器和镜像。如果不提供该参数,docker-gc 会删除所有容器和镜像。最好事先确认 docker-gc 要删除的内容。上述命令的输出如下所示:

\[2017-04-28T06:27:24\] \[INFO\] : The following container would have been removed 0c1b3b0972bb792bee508 60c35a4 bc08ba32b527d53eab173d12a15c28deb931/vibrant_ yonath\[2017-04-28T06:27:24\] \[INFO\] : The following container would have been removed 2a72d41e4b25e2782f7844e188643e395650a9ecca660e7a0dc2b7989e5acc28 /friendlyhello_ web\[2017-04-28T06:27:24\] \[INFO\] : The following image would have been removed sha256:00f017a8c2a6e1 fe2f fd05c281 f27d069d2a99323a8cd514dd35f228ba26d2ff\[busybox: latest\]\[2017-04-28T06:27:24\] \[ INFO\] : The following image would have been removed sha256 :4a323b466a5ac4ce6524 8dd970b538922c54e535700cafe9448b52a3094483ea\[hello-world:latest\]\[2017-04-28T06:27:24\] \[INFO\] : The following image would have been removed sha256:4a323b4 66a5ac4ce65248dd970b538922c54e535700cafe9448b52a3094483ea\[python:2.7-slim\]

如果你认同 docker-gc 清理方案, 可以不使用 DRY_RUN 再次运行 docker-gc 执行清空操作。

docker run --rm -v /var/run/docker.sock:/var/run/docker.sock spotify/docker-gc

docker-gc 还支持一些其他的选项。建议你阅读 docker-gc 文档以了解更多相关信息:

https://github.com/spotify/docker-gc/blob/master/README.md

GitHub 地址:https://github.com/spotify/docker-gc

有哪些开源的码头工人工具