我使用 Duplicator 插件创建了我的 WordPress 网站。首先,我将它部署在具有 IP1 的机器上的常规 docker 容器上,然后,在我将 WordPress 配置为工作后,我对其进行了“docker commit”,然后将其推送到我的 docker hub 存储库,然后,我使用了这个新图像将 WordPress 配置为在我的 Ku,wordpress,docker,kubernetes"/>

首页 > 解决方案 > 我该如何更新

我使用 Duplicator 插件创建了我的 WordPress 网站。首先,我将它部署在具有 IP1 的机器上的常规 docker 容器上,然后,在我将 WordPress 配置为工作后,我对其进行了“docker commit”,然后将其推送到我的 docker hub 存储库,然后,我使用了这个新图像将 WordPress 配置为在我的 Ku

问题描述

我使用 Duplicator 插件创建了我的 WordPress 网站。首先,我将它部署在具有 IP1 的机器上的常规 docker 容器上,然后,在我将 WordPress 配置为工作后,我对其进行了“docker commit”,然后将其推送到我的 docker hub 存储库,然后,我使用了这个新图像将 WordPress 配置为在我的 Kubernetes pod 上部署 wp,但是当我部署它时,图像不会显示在 f12 img 中src=IP1/bla/bla/bla.jpg

我确实将我的 wp_options 和 wp_posts 更新为我的 Kubernetes IP,但它仍然没有改变并在 src 中显示 IP1。我应该怎么办?


根据我的理解,apache 所指的 php 库存在一些问题。由于它是一个迁移项目,并且在当前环境中运行良好,因此将现有的 php 文件夹(位于 apache 内)和 fpm 二进制文件和配置从工作环境复制到新环境。仍然不知道确切的根本原因(因为只有读取场景失败),但这已经奏效

标签: wordpressdockerkubernetes

解决方案


WordPress 生态系统中有几种不同的方法可以扫描数据库以查找旧 IP 或 URL 的实例并将其替换为新 IP 或 URL。

如果您对使用终端感到满意,一种是使用 WP CLI。您安装 WP CLI,然后简单地执行 wp search-replace old-ip new-ip 您可以添加 --dry-run 以向您展示它将做什么而不进行任何实际更改。有几个很好的参数可以排除表,还有其他的

另一个是使用像 Better Search Replace 这样的插件,它基本上做同样的事情,但在 WordPress 管理员中为您提供了一个 UI。

不建议按照评论中的建议对数据库进行直接查询,因为在您的情况下 URL 或 IP 的某些实例可以存储在序列化数组中,如果新旧 URL 不具有确切的值,则可能会中断相同的长度。

Plugin 和 wp cli 方法确保不会发生这种情况,并且序列化的数组被正确更新。


推荐阅读