首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows容器-如何提交容器

Windows容器-如何提交容器
EN

Stack Overflow用户
提问于 2016-10-16 19:39:16
回答 3查看 5.8K关注 0票数 3

我正在windows 2016上运行一个Windows容器,并对基本映像进行了一些更改。现在想要提交,但当我运行

代码语言:javascript
复制
docker commit <containerId> <imageName>

我得到以下错误

来自守护进程的错误响应: Windows不支持正在运行的容器的提交。

想知道有没有人能解决这个问题。如果不可能提交,您将如何构建容器?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-10-16 20:06:17

这来自于daemon/commit.go

代码语言:javascript
复制
// It is not possible to commit a running container on Windows
if runtime.GOOS == "windows" && container.IsRunning() {
    return "", fmt.Errorf("Windows does not support commit of a running container")
}

正如docker commit所提到的:

默认情况下,提交的容器及其进程将在提交图像时暂停。

但是,在Windows上实现暂停恢复直到现在才开始使用PR 26795提交dd38389 for docker pause

在那之后不久就可以提交了。

如果不可能提交,您将如何构建容器?

提交是将容器保存为映像(或“构建”图像),而不是构建容器。

票数 1
EN

Stack Overflow用户

发布于 2017-09-27 22:28:01

这现在起作用了,请参阅此博客帖子以获得完整信息。您所要做的就是停止容器,然后使用'docker -a‘来显示所有容器(甚至那些不再运行的容器)。找到要从其中创建图像的容器,然后使用通常的“停靠器提交{容器to }{newimagename}”。因为它不再运行,所以提交将成功,您将在'docker映像ls‘的输出中看到新的映像。

票数 6
EN

Stack Overflow用户

发布于 2016-10-17 14:36:55

构建任何类型容器映像的最简单和最可靠的方法是使用Dockerfiledocker build。这两个工作与Docker Windows容器很好。详情如下:

票数 -3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40074628

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档