Docker WordPress图像在创建新Docker图像时不会保留wp内容

Docker WordPress图像在创建新Docker图像时不会保留wp内容,wordpress,docker,Wordpress,Docker,让我澄清一下情况: 使用以下命令运行wordpress docker容器: docker run-name wp-d-p 80:80 wordpress 使用bash登录到正在运行的容器: docker exec-it wp/bin/bash 创建2个虚拟文件: 根目录中的一个: 触摸屏/xxx wp内容/主题中的一个 touch/var/www/html/wp content/themes/xxx 创建新的wordpress图像: docker提交工作包新工作包 杀死原始容器: docker

让我澄清一下情况:

使用以下命令运行wordpress docker容器:

docker run-name wp-d-p 80:80 wordpress

使用bash登录到正在运行的容器:

docker exec-it wp/bin/bash

创建2个虚拟文件:

根目录中的一个:

触摸屏/xxx

wp内容/主题中的一个

touch/var/www/html/wp content/themes/xxx

创建新的wordpress图像:

docker提交工作包新工作包

杀死原始容器:

docker kill wp

运行新docker映像:

docker run-名称new_wp-d-p 80:80 new_wp

检查在步骤3中创建的虚拟文件:

根目录中存在虚拟文件

wp内容/主题中的虚拟文件不再存在

问题:

有人能解释第7步中的这种bizare行为吗? 我应该怎么做才能持久保存wp内容数据? 另外,我正在部署AWS ECS Fargate实例,因此使用卷对我来说不是很实际。理想情况下-我希望所有的东西都在一个图像下,而不让文件从wp内容目录中消失


非常感谢您的回答。

摘要本质上是非持久性的


如果您想利用docker for WP,我强烈建议您将映像资产管理转移到S3和Cloudfront。

Docket本质上是非持久性的


如果您想利用docker for WP,我强烈建议您将映像资产管理转移到S3和Cloudfront。

wordpress的docker映像:

这将强制在任何生成的容器上创建卷,即使在docker run命令中未指定卷。如果没有规范,您将得到一个匿名卷,该卷具有一个长的唯一id,可以在docker卷ls中看到

我强烈建议不要在任何想要重复性的工作流中使用docker commit命令,它只捕获容器文件系统的更改,您可以通过docker container diff看到这些更改。对卷的更改不是容器文件系统的一部分,因此不会包含在此提交中

要持久化数据,应定义并使用卷,例如:

docker run --name wp -v wpdata:/var/www/html -d -p 80:80 wordpress

wordpress的docker图像:

这将强制在任何生成的容器上创建卷,即使在docker run命令中未指定卷。如果没有规范,您将得到一个匿名卷,该卷具有一个长的唯一id,可以在docker卷ls中看到

我强烈建议不要在任何想要重复性的工作流中使用docker commit命令,它只捕获容器文件系统的更改,您可以通过docker container diff看到这些更改。对卷的更改不是容器文件系统的一部分,因此不会包含在此提交中

要持久化数据,应定义并使用卷,例如:

docker run --name wp -v wpdata:/var/www/html -d -p 80:80 wordpress

非常感谢。但我已经明确指出,使用卷不是我的选择。@LaimonasSutkus无论它们是否是您用例的选择,您之所以使用它们,是因为您选择了映像。除非您知道如何部署AWS Fargate实例,这些实例使用的卷中定义了所有wp内容和其他数据。@LaimonasSutkus我的建议是使用docker build中安装插件/主题的docker文件。docker提交倾向于指出非自动的手动和不可复制的步骤。但我已经明确指出,使用卷不是我的选择。@LaimonasSutkus无论它们是否是您用例的选择,您之所以使用它们,是因为您选择了映像。除非您知道如何部署AWS Fargate实例,这些实例使用的卷中定义了所有wp内容和其他数据。@LaimonasSutkus我的建议是使用docker build中安装插件/主题的docker文件。docker提交倾向于指示非自动的手动和不可复制的步骤。以下是wordpress关于如何预安装主题的详细信息:和