加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

dockerfile维护的最佳实践?

发布时间:2020-12-16 03:37:34 所属栏目:安全 来源:网络整理
导读:我有一个Dockerfile,如下所示: FROM openjdk:8u151# others here 我有2个关于基本图像的问题: 1.如何获得标签? 通常,我从dockerhub得到它,让我们说openjdk:8u151,我可以从dockerhubs openjdk repository获得它. 如果我可以从任何本地docker命令获取所有

我有一个Dockerfile,如下所示:

FROM openjdk:8u151

# others here

我有2个关于基本图像的问题:

1.如何获得标签?

通常,我从dockerhub得到它,让我们说openjdk:8u151,我可以从dockerhub’s openjdk repository获得它.

如果我可以从任何本地docker命令获取所有标签,那么我不需要访问web来获取标签,效率真的有点低吗?

2.基本图像是否安全?

我的意思是如果我的基本图像总是存在?

看看上面的openjdk回购,它是一个官方回购.

我发现只有8u151供我选择.但我认为在这个过程中应该有很多jdk8版本,所以还应该有很多jdk8图像,比如8u101,8u163等.

那么我可以猜维护者会删除openjdk的一些旧图像吗?
如果发生这种情况,我的Dockerfile如何工作?如果我的上游删除那里的图像,我应该总是改变我的基本图像?我真的很难保持这样的事情.

即使openjdk真的只生成一个jdk8版本.我的谜题仍然是无法避免的,因为dockerhub真的为用户提供了删除按钮.

什么是最好的做法,请建议,谢谢.

最佳答案

How to get the tags?

见“How to list all tags for a Docker image on a remote registry?”.
API就足够了

例如,访问:

https://registry.hub.docker.com/v2/repositories/library/java/tags/?page_size=100&page=2

Will the base image safe?

只要您将自己构建的图像保存在注册表中(或者是自己托管的图像,或者是自托管图像),是的:您将能够至少根据您已完成的图像构建新图像.
或者,即使基本图像消失,您仍然在自己的图像中拥有其图层,并且可以重新标记它(如果构建缓存可用).
参见例如“Is there a way to tag a previous layer in a docker image or revert a commit?”.
请参阅“can I run an intermediate layer of docker image?”中的警告.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读