Tag: 图像

在Portainer(?)中更改图像时重新启动Docker容器(自动)

我有一个图像(Docker)的Java WAR文件,并且正在Tomcat(Docker)容器中启动。 由于编码改变,WAR也会改变。 我想要做以下事情: 将Java代码更新更改为Git 有一个创build的WAR文件(从代码只是推到Git) 创build一个使用NEW WAR文件的新图像(Docker) 停止所有旧容器(运行旧图像) 重新启动容器(这将使用新的图像) 我也使用Portainer。 是否有一系列的命令可以执行/运行,以便项目#4和项目#5可以自动运行(无需人为干预)? 有什么办法可以做到这一点? TIA

无法使用Debootstrap创buildDocker基础图像

我提到官方的Docker文档: 创build一个基础镜像并执行以下命令: sudo debootstrap raring raring > /dev/null sudo tar -C raring -c . | sudo docker import – raring sudo docker run raring cat /etc/lsb-release 我收到了最后一条命令的错误信息,图像“raring”是空的,0B。 container_linux.go:247: starting container process caused "exec: \"cat\": executable file not found in $PATH" docker: Error response from daemon: oci runtime error: container_linux.go:247: starting container process caused "exec: \"cat\": […]

具体访问多用户的外部dockerregistry

我刚刚用Docker创build了我的第一个外部访问registry,并设置了一个用户及其密码的限制访问权限,我的问题是,是否可以指定权限? 像一个用户访问registry的特定的泊坞窗图像,另一个只能访问不同的图像? 感谢提前 湿婆

如何将Docker镜像列表与标记列表关联起来,都是通过API返回的?

你可以使用curl https://index.docker.io/v1/repositories/ubuntu/images来产生{ {"checksum": "", "id": "76ca2fd907879906ba5c936738ccce0b577590040ac8d288f07afb3d34ae8b03"}, … } 也可以使用curl https://index.docker.io/v1/repositories/ubuntu/tags来产生{ {"layer": "5ba9dab4", "name": "latest"}, {"layer": "3db9c44f", "name": "10.04"}, … } 你现在怎么能将图像ID与标签名称关联起来? 你能依靠项目的顺序吗? 你可以从速记图层ID获取图像ID?

为特定文件searchDocker镜像

新的Docker的总数。 我的问题是,是否有一种方法来searchDocker镜像来查看是否存在任何Jar文件。 如果我理解正确的话,Docker镜像就是在图层中build立起来的,每一层都不一定属于那个镜像。 我最初的做法是“保存图像> image.tar”将所有图层放在一起,然后recursion地尝试search“* .jar”模式的结果焦油。 如果使用标准的tar,例如,我可以在tar的所有子目录中看到“less filename.tar”。 这似乎并不是这样一个形象已经tartarled。 有没有办法做到这一点,或者我从根本上误解了一幅图像是如何构build的,以及它在目标时发生了什么? 编辑:我其实是想特意做到这一点,而不是启动图像的docker容器,然后search。 这甚至有可能吗? 编辑:好吧,我会尽量让这个更清楚。 我试图采取这种做法: 1)从docker图像创build一个tarball:docker保存图像> image.jar 2)然后我试图用这个简单的脚本searchtar文件的jar文件: #Will list and extract all jars from a tar file arc=$1.tar; file='*.jar'; tar tvf $arc | grep -E "$file" && tar xvf $arc "$file" 3)这将用于标准tarball,但不适用于docker tarball 再一次,我对docker工人是全新的,我只是想知道是否有另一种方式来做这件事。

DOCKER – LAMP堆栈问题 – Premade Image

试图设置与docker的LAMP堆栈,并发现并尝试使用https://hub.docker.com/r/linode/lamp/ 但我找不到,也不知道如何访问链接到域的文件,或者如何从example.com等更改域名。 我认为我真正的问题是如何更改文件或重build其他人的图像。

取而代之的是从本地docker映像中提取

我有一个Dockerfile内容的应用程序,看起来像 Dockerfile FROM SOME_NUMBERS.dkr.ecr.us-east-1.amazonaws.com/app_name:SOME_HEX_VALUE COPY docker/app/bin/startup.sh /usr/bin/ CMD ["/usr/bin/startup.sh"] 我不想从亚马逊拉的形象,而是我想从已经存在的本地图像“拉”,拉第一个docker-compose up –build命令后运行。 当我做docker images我得到 SOME_NUMBERS.dkr.ecr.us-east-1.amazonaws.com/app_name SOME_HEX_VALUE SOMESHORT_HEX 2 days ago 1.54 GB这意味着图像已经在本地。 我明白这一点 如果主机有你想要docker-compose使用的图像,它将使用该图像,但是如果主机没有它,它会去泊坞窗集线器或任何你已经在你的configurationregistry 所以我将Dockerfile的内容更改为: FROM IMAGE_ID:SOME_HEX_VALUE其中IMAGE_ID是存储库的映像ID,当我执行docker images但是我得到Service 'app' failed to build: repository SOMESHORT_HEX not found: does not exist or no pull access ,我想知道如何告诉Docker使用本地图像,而不是试图从亚马逊的url拉。 有任何想法吗?

使图像彼此沟通Docker

我已经在docker中创build了一个web应用程序。 我的web应用程序使用其他docker图像,如redis,mariadb。 这些都在本地运行。 现在我创build了一个我的webapp的图像。 所以我有三个图像:webapp(这是不起来),redis和mariadb这是起来。 当我试图运行我的web应用程序的图像,它无法启动..它无法与其他图像(redis和mariadb)连接。 如何使我的webapp图像与其他需要的图像进行通信

在主机操作系统上,Docker容器中的进程是否会显示为相同的进程?

我在Macbook上运行Docker的Mongo容器。 为了显示特定容器中的进程,我们使用TOP命令,如下所示。 从Udemy上的一些教程video中,演讲者表示上图中PID 3238所示的过程在主机中显示为过程,并通过命令ps aux 。 但是,我找不到在我的主机进程列表下的PID 3238进程。 想知道是我错误地设置了Docker还是错过了一些东西?

如何使用docker_image模块标记本地docker镜像?

我正在构build一个本地docker镜像,我想标记它,但我不知道如何为我刚刚在本地创build的Docker镜像填充repository字段。 用docker_image模块甚至可以标记本地图像?