wordpress - WordPress、Git 和 Docker
问题描述
我刚开始玩 WordPress,我有几个问题:
- 我想使用 Git 跟踪我的更改。据我研究,我应该只跟踪:“wp-config.php”和“wp-content”目录。是否有另一种方法可以跟踪 WP 项目的更改?
- 每次我克隆项目时,它都会在设置阶段迎接我。我注意到更改并没有真正保存,即删除插件或创建页面。查看数据库后,我注意到 WP 在数据库中存储页面和更多信息。我怎样才能跟踪这种变化?
注意:我使用 Docker & Docker-Composer 创建了一个开发环境,如下所示。我想添加页面并进行配置,然后将更改上传到 git 存储库。唯一的问题是 WP 将更改保存到数据库中。我该如何处理?
version: '3'
services:
mysql:
image: mysql:8
container_name: "MySQL-Database"
restart: always
command: "--default-authentication-plugin=mysql_native_password"
environment:
MYSQL_ROOT_PASSWORD: wordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
volumes:
- ./mysql_data:/var/lib/mysql
excelsior:
build: ./excelsior-app/
container_name: "Wordpress-Server"
depends_on:
- mysql
restart: always
volumes:
- ./excelsior-app/wp-content:/var/www/html/wp-content
environment:
WORDPRESS_DB_HOST: mysql
WORDPRESS_DB_NAME: wordpress
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
ports:
- 8080:80
- 443:443
phpmyadmin:
image: phpmyadmin/phpmyadmin
container_name: "PHP-MyAdmin"
depends_on:
- mysql
restart: always
ports:
- 3333:80
environment:
PMA_HOST: mysql
MYSQL_ROOT_PASSWORT: wordpress
“精益求精”如下:
FROM wordpress
COPY wp-config.php /var/www/html/
解决方案
WordPress 将其数据存储在数据库中的原因是因为这些数据大部分是二进制格式、媒体、图片、表格、索引。
Git 可以很好地跟踪文本源代码文件中的更改,Git 不是为存储任何类型的二进制/媒体/数据文件而构建的,因为没有跟踪媒体/二进制文件中的更改的概念。
因此,Git 将是存储 PHP 脚本和配置文件并跟踪您对这些文件所做的更改的好地方。
为了备份和恢复,甚至将最新的开发内容从一台 WordPress 服务器复制到另一台,您可以使用导出工具将所有内容导出到一个 XML 文件,然后将其保存为备份以用于恢复整个WordPress 内容及时到特定状态。
推荐阅读
- ios - 如何将自定义元素添加到 UIAlertController?
- javascript - 我将有效负载中的正文传递给 POST 方法,这些方法是选定的过滤器。如果它是空的,现在是否可以发送任何数组类别
- spring - 模拟基本抽象类的自动装配对象
- android - 从片段写入 Firebase 数据库
- spring-boot - 为什么我总是在 zuul api 网关中遇到连接超时异常?
- javascript - 使用 Probot 创建关于快速路由响应的 Github 问题
- azure - heptio velero 无法备份 azure AKS 中的持久卷
- visual-studio-code - 是否有将当前行移动到当前窗口顶部的命令,类似于简要编辑器 Ctrl-T?
- angular - 角材料 | 将 mat-stepper 动画更改为 fadeIn <-> fadeOut
- apache-kafka - Kafka 消息头是放置事件类型名称的正确位置吗?