Tag: 图像

如何使用docker-java库检查图像的状态

我正在尝试使用docker-Java库( https://github.com/docker-java/docker-java )来检查映像是否正在运行。 我可以使用以下命令获取所有正在运行的图像的列表 List<Container> containers = dockerClient.listContainersCmd().exec(); 有没有办法来检查图像的状态,如果它正在运行或不使用docker-java库?

获取泊坞窗图像的父图像

有没有一种方法来获取给定图像的泊坞窗父图像树? 我知道docker history IMG_NAME将为您正在使用的当前图片提供一个图片ID,但是其他所有内容docker history IMG_NAME丢失。 我读过这篇文章是为了安全考虑而在v1.10中被提取出来的,但似乎是一个更大的问题,无法validation创build最终图像的图像树。 另外我find的其他东西是docker save IMG_NAME -o TAR_OUTPUT.tar这将允许您查看每个层中的所有文件,但似乎非常繁琐。 我怎么能保证,在一个给定的图像修改软件的唯一的东西是软件本身的安装和configuration。 看起来,能够看到用于生成每个连续图像的Dockerfiles中的更改将是一个简单的方法来validation这一点。

docker中图层和图像有什么区别?

我知道一个图像由许多层组成。 例如,如果你运行“docker history [Image]”,你可以得到一系列的ID,顶部的ID和图像ID相同,其余的ID是图层ID。 在这种情况下,这些rest层ID是否对应于其他一些图像? 如果这是真的,我可以查看图层作为图像?

从源代码构buildfiware / cygnus docker – 最后一步(8)

当试图从源代码构build一个fiware / cygnus泊坞窗图像时,最后一部分,即从jar中构build图像: docker build -f ./docker/Dockerfile -t fiware/cygnus . 在构build过程的最后一步(8)中给出以下消息:“没有指定源文件”。 在这一点上,build筑似乎被中止。 该build筑是根据以下url完成的: https : //github.com/telefonicaid/fiware-cygnus/tree/master/docker (源代码来自: https : //github.com/telefonicaid/fiware-cygnus.git )首先从提供的源代码构buildJava归档(jar),然后从jar文件构builddocker镜像。 1)步骤8中的消息可能是什么原因? 因为根据文件,没有提到其他步骤。 此外,在文档中特别提到的“目标”目录似乎没有做出来。 2)然而,确实出现了一个图像,但没有标签( 参见上面提到的命令中的“-t fiware / cygnus”标志)。 这是否是由于大楼只完成了第8步而留下不完整的图像? 非常感谢!

Docker可以自动重新启动容器并使用新的图像标签提交更改?

我使用Docker进行部署,并使用Docker-Compose(.yml文件)同时启动〜6个容器。 Compose文件中的每个图像都在本地find(部署环境中没有Internet连接)。 按照我的部署所采取的步骤如下所示: 运行docker-compose up(使用带有“latest”标签的图像从本地图像启动6个容器,如image1:latest,image2:latest等) 退出/停止时,我有6个停止的容器。 手动重新启动六个停止的容器(docker start xxx) 手动提交每个重新启动的容器(docker commit xxx) 手动重新标记每一代前一代图像(image1:最新 – >图像1:版本1,图像1:版本2等),并手动删除包含“最新”标签的图像 手动标记每个提交的容器(现在是图像)与“最新”标签(image1:最新) 这个过程是相当用户参与的,我们的部署需要用户参与才能运行“docker-compose up”命令,然后closures/停止Docker-Compose。 所需的最终目标是让脚本或Docker自己处理这些步骤,并最终生成不同代的图像(image1:version1,image1:version2,image1:latest等)。 所以,我的问题是,我将如何去创build一个脚本(或让Docker做到这一点),脚本(或者Docker)可以自主地执行脚本: 在停止/退出Docker-Compose时重新启动已停止的容器 提交重新启动的容器 使用最新的标签重新标记以前的图像到增加的版本#(图像1:版本1,图像1:版本2等),然后删除以前的图像1:最新的图像 使用“最新”标签标记新提交的重新启动的容器(现在是图片) 这是一个相当冗长和密集的问题要回答,但我将不胜感激任何帮助完成我的任务所需的任何步骤。 谢谢。

无法将新的docker映像推送到bluemix

我创build了我的第一个节点/快速应用程序,构build了一个Docker镜像,并为其部署了一个本地Docker容器(在VirtualBox的帮助下,因为我在Windows上)。 我遵循这里的指示: https://console.ng.bluemix.net/catalog/images/add-your-own/?org=5918bf71-3a29-446d-b4f7-b4a103341b45&space=929fcbd9-847c-471b-9868-353ad22b8a46&context=containerImages 能够让一切工作,并推到bluemix。 现在,几个星期后,我准备在bluemix上更新我的容器。 我已经重build了我的本地Docker镜像,并部署了一个新的本地容器,一切正常。 现在我想replace先前推送到bluemix的图像。 我做cflogin,其次是cf iclogin ,并按预期工作。 然后我把图片标记为“最新”: docker -H tcp://192.168.0.16:2375 tag -f mockchain registry.ng.bluemix.net/gormanm/mockchain:latest 这工作正常。 现在我已经准备好推动并发出这个命令了: docker -H tcp://192.168.0.16:2375 push registry.ng.bluemix.net/gormanm/mockchain:latest 当我这样做,而不是推图像,它提示我login: The push refers to a repository [registry.ng.bluemix.net/gormanm/mockchain] (length: 1) Sending image list Please login prior to push: Username: 从我读过的所有内容来看,现在不应该提示我,因为我已经完成了cflogin和cf iclogin 。 此外,它给我的提示是用户名,密码和电子邮件地址。 不过,我input这个信息,但总是说无效的用户名/密码。 是bluemix有麻烦还是我做错了什么?

我在哪里可以创build图像? 本地所有? (Docker远程API)

可能/可能不是一个简单的问题,但我可以从哪里抽取图像以通过API创build新的Docker图像? 文档 我(不成功)的尝试一直试图从本地build立一个图像。 使用docker images来获取docker images列表,然后尝试使用他们的图像ID或存储库没有为我工作,同时使用fromImage查询参数如下所示: curl –data '' host:port/images/create?fromImage=test/hello-world&tag=webTesting 我始终得到以下错误: {"errorDetail":{"message":"Error: image test/hello-world not found"},"error":"Error: image test/hello-world not found"} 在运行docker images ,我们可以清楚地看到以下内容: REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE test/hello-world latest 6d9bd5e6da4e 2 days ago 556.9 MB 在使用仓库/标签/ ID的所有组合中,错误仍然显示。 我知道我们可以使用fromSrc从urls创build图片,并且通过上传.tar文件还可以创build图片path,但是可以在本地创build一个已经存在的图片吗? 我已经在编译Ubuntu或CentOS的图像方面取得了成功,但是我基本上正在寻找使用新的标签/存储库复制本地的东西。 我确实在文档中看到,只有在拉取图​​像时才能使用Image参数 – 这是否意味着我们只能导入托pipe在Dockerhub上的图像?

如何检查docker图像是否有所有的文件?

有没有一种方法来检查docker图像是否包含Dockerfile复制的所有文件,并了解是否按照Dockerfile中的configuration构build了图像? 我的情况是,图像是成功构build的,但是当我尝试运行它时,docker抱怨找不到某个文件或其他文件,并且容器无法运行,所以无法对其执行操作。 做docker检查没有帮助,因为它不报告图像中的文件。 有什么方法吗?

所有的未标记的docker.io图像可以安全地删除?

对于这个答案,我找不到任何地方的问题。 在使用docker.io时,会创build很多未标记的图像。 我的问题是:如果我删除他们,我有冒险打破任何东西? 我的意思是有可能是另一个标记(!)图像依赖于他们,并停止运作,当我删除untagged孩子? 这在所有情况下都是如此吗? 谢谢!

在Docker中创build映像失败

我试图在Docker容器上创build自己的图像。 我写了我的Docker文件,如下所示: FROM ubuntu:latest RUN apt-get update && apt-get install astyle ruby 但在跑步 docker build -t username/newname . 它给出一个错误来自守护进程的错误响应: mkdir /var/lib/docker/tmp/docker-builder705720973: no space left on device 我是Docker的新手。 任何帮助,将不胜感激。 提前致谢