首页 > 解决方案 > 创建新的 docker 镜像时 Docker WordPress 镜像不保留 wp-content

问题描述

让我澄清一下情况:


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

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


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

    docker exec -it wp /bin/bash


  1. 创建 2 个虚拟文件:

    根中的一个:

    触摸/xxx

    wp-content/themes 中的一个

    触摸 /var/www/html/wp-content/themes/xxx


  1. 创建一个新的 wordpress 图像:

    码头工人提交 wp new_wp


  1. 杀死原始容器:

    码头工人杀死WP


  1. 运行新的 docker 镜像:

    docker run --name new_wp -d -p 80:80 new_wp


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

    根目录中的虚拟文件存在

    wp-content/themes 中的虚拟文件不再存在!!!


问题:

  1. 任何人都可以在第 7 步中解释这种奇怪的行为吗?
  2. 我应该怎么做才能持久化 wp-content 数据?

PS 我正在部署到 AWS ECS Fargate 实例,因此使用卷对我来说不是很实用。理想情况下-我希望将所有内容都放在一个图像下,而不会从wp-content目录中消失文件。

非常感谢您的回答。

标签: wordpressdocker

解决方案


Docket 本质上是非持久的。

如果您想将 docker 用于 WP,我强烈建议您将图像资产管理卸载到 S3 和 Cloudfront。


推荐阅读