更新容器后保存docker容器

时间:2017-10-24 18:10:19

标签: amazon-web-services docker save docker-compose

我是Docker的新蜜蜂,我正在尝试创建/使用现有的图像来启动我的应用程序。在阅读了几个stackoverflow帖子和Docker文档之后,我能够使用Docker容器启动我的应用程序。 现在我正在寻找保存修改后的Docker容器的正确方法,这样我就可以通过运行docker命令重用容器来启动我的应用程序。

我看到人们使用$ docker commit来保存docker容器。如果我运行此命令,容器保存在哪里?还有其他人能够下载我保存的容器吗?

我打算将保存的docker容器部署到AWS云。

对此提出任何建议或意见都会有所帮助。

更新帖子 这是我用来下载和构建容器的dockerfile

FROM tomcat:7.0.82-jre8
RUN apt-get update && apt-get -y upgrade
WORKDIR /usr/local/tomcat
COPY /app.war /usr/local/tomcat/webapps/app.war
RUN unzip /usr/local/tomcat/webapps/app.war -d /usr/local/tomcat/webapps/app
RUN apt-get update && apt-get install -y dos2unix
EXPOSE 8080
COPY tomcat-users.xml /usr/local/tomcat/conf/
COPY config1.xml /usr/local/tomcat/webapps/app/conf/
COPY config2.properties /usr/local/tomcat/webapps/app/conf/properties/
COPY config4.properties /usr/local/tomcat/webapps/app/conf/

ENV JAVA_OPTS="-Xms2G -Xmx2G"
# Copy Entrypoint script in the container
COPY ./docker-entrypoint.sh / 
RUN dos2unix /docker-entrypoint.sh && apt-get --purge remove -y dos2unix && rm -rf /var/lib/apt/lists/*
ENTRYPOINT ["/docker-entrypoint.sh"]

2 个答案:

答案 0 :(得分:2)

If i run this command, where does the container gets saved ?

在您的本地计算机上。只需输入docker images,您就会看到它。

will anybody else able to download my saved container ?

不,因为它只在您的本地计算机上。

但这不是你应该如何使用docker的方式! 不要修改正在运行的容器!相反,写一个Dockerfile并通过这个Dockerfile构建你的图像。

答案 1 :(得分:0)

来自Docker Documentation

  

通常,最好使用Dockerfiles管理图像   记录和维护的方式。

     

...

     

提交操作不包含卷中包含的任何数据   安装在容器内。

提交容器:

$ docker ps

CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS              NAMES
c3f279d17e0a        ubuntu:12.04        /bin/bash           7 days ago          Up 25 hours                            desperate_dubinsky
197387f1b436        ubuntu:12.04        /bin/bash           7 days ago          Up 25 hours                            focused_hamilton

$ docker commit c3f279d17e0a  svendowideit/testimage:version3

f5283438590d

$ docker images

REPOSITORY                        TAG                 ID                  CREATED             SIZE
svendowideit/testimage            version3            f5283438590d        16 seconds ago      335.7 MB

正如您在示例中所见,保存的图像存储在运行docker commit

的机器中