如何使用docker commit忽略日志

时间:2015-09-01 14:58:01

标签: docker ignore

我使用<jaxb:globalBindings localScoping="toplevel"> <!-- JPA-entities must be serializable --> <xjc:serializable /> </jaxb:globalBindings> <jaxb:bindings schemaLocation="schema.xsd" node="/xs:schema"> <annox:annotate> <!-- my attempt --> <annox:annotate annox:class="javax.persistence.Table" schema="schema_name"> </annox:annotate> </annox:annotate> <hj:persistence> <hj:default-generated-id name="Hjid"> <orm:generated-value strategy="IDENTITY" /> </hj:default-generated-id> </hj:persistence> </jaxb:bindings> 来获取ubuntu:最新的docker

一旦我在这个容器中部署了一些工件,并且我想将它用于其他地方,那么我使用了docker pull ubuntu 但是我发现当我使用docker commit ${container_id}命令时,它会推送所有文件,包括应用程序日志。

我在某些情况下谷歌,它可能使用泊坞文件,并设置docker commit文件忽略那些我不需要的文件。 但重要的是我已经使用许可证部署了应用程序,那么我可以使用只有.dockerignore的容器来提交更改吗?

1 个答案:

答案 0 :(得分:0)

docker commit将始终捕获容器文件系统中的所有内容。这只是它的工作方式。

.dockerignore仅适用于docker build命令。 docker build使用Dockerfile获取现有映像(如ubuntu:latest),对其运行一些修改,然后提交结果。

如果你想构建一个容器以供其他地方使用,可以使用Dockerfile来接近它。你没有提供太多信息,所以这里有一个超级稀疏的例子......

# Dockerfile
FROM ubuntu:latest
ADD myartifact /src
CMD /src/my_script.sh

然后......

docker build -t myOrg/myImage .

之后您可以使用

运行图像
docker run myOrg/myImage
相关问题