mixd / packerwp
使用Deployer在目标环境中部署传统的WordPress安装
Requires
- php: >=7.3
Suggests
- deployer/deployer: Deployer binary to make use of the 'dep' commands
- johnpbloch/wordpress: Allows you to install WordPress using Composer
This package is auto-updated.
Last update: 2024-09-25 20:40:50 UTC
README
由Mixd构建
PackerWP是一个定制的Deployer运行手册。它被设计为替代传统的Ruby部署工具WP Deploy,并针对包含WP Deploy之前提供的所有Capistrano任务进行了调整。
可用任务
此工具围绕Mixd的NHS框架设计,但应该足够灵活,可以集成到任何其他基于WordPress的项目中。
开始新项目
要开始,您需要使用composer将PackerWP安装到您的项目中
$ composer require mixd/packerwp
现在PackerWP已安装,请确保您已将Deployer二进制文件安装到本地系统,以便更容易运行命令。
$ curl -LO https://deployer.org/deployer.phar
$ mv deployer.phar /usr/local/bin/dep
$ chmod +x /usr/local/bin/dep
设置
PackerWP使用位于项目根目录的deploy.json
文件来定义所有环境配置。
运行cp ./vendor/mixd/packerwp/config/deploy.example.json ./deploy.json
,将接受的配置规则副本添加到项目根目录。
然后开始填充它。
现在,在项目根目录中添加一个符号链接以链接到自定义Deployer任务。ln -s vendor/mixd/packerwp/deploy.php
。
现在,您应该能够运行dep
并看到所有可用任务的列表。
任务
初始WordPress安装
一旦您设置了环境,您可以通过运行以下命令安装WordPress:
$ dep setup-local-wp
此任务将为您生成一个wp-config.php并将其放置在项目根目录,然后运行WordPress安装,重置WordPress Salts,并向您展示新的管理员密码和WordPress管理员的链接。
如果您需要重新生成管理员密码,您可以在任何时候通过运行以下命令重置它:
$ dep reset-admin-pwd [阶段]
如果您省略了
[阶段]
,您将重置本地环境的密码,否则您可以相应地提供staging
或production
。注意:此任务还将重置WordPress Salts。
处理数据库
有时您可能希望将MySQL数据库推送到或从特定环境拉取。
请确保您在deploy.json
中填充了目标环境的wp_home_url
和db_$
条目。
要下载远程主机的数据库副本并将其导入本地环境,您可以运行:
$ dep pull-remote-db [stage]
要上传本地数据库并将其导入远程主机,您可以运行:
$ dep push-local-db [stage]
这两个
pull
和push
任务都将处理搜索和替换必要的URL,以便从local
转换为[阶段]
或从[阶段]
转换为local
。
如果您只想进行备份而无需导入或替换,您可以运行:
$ dep backup-remote-db
或
$ dep backup-local-db
这些任务将使用wp db export
创建MySQL备份并将其gzip到项目根目录中的db_backups
文件夹。
处理上传的媒体
要从远程主机下载WordPress上传文件夹,请运行:
$ dep pull-remote-uploads [stage]
要将本地WordPress上传文件夹上传到远程主机,请运行:
$ dep push-local-uploads [stage]
部署
如果您准备将工作部署到远程主机,只需运行:
$ dep deploy [stage]
默认情况下,PackerWP被配置为使用PHP的date函数,以下格式Ymd
命名每个发布版本。
模板
PackerWP还支持wp-config.php的额外配置。如果您想在dep setup-wp
任务期间添加的WP配置额外配置进行覆盖,请执行以下操作
创建模板文件夹:mkdir ./templates/
复制捆绑的WP额外文件:cp vendor/mixd/packerwp/config/templates/extras.php ./templates/extras.php
现在您可以编辑额外文件。请确保将此文件提交并推送到Github,以便其他开发者可以持续使用。
贡献
如果您想请求更改或额外的任务,我们鼓励您在Github仓库上创建一个Pull Request。