honeybee / honeybee-agavi-cmf-project
基于Agavi和Honeybee CQRS库构建内容管理应用的项目(模板)。
Requires
- php: >=5.6.0
- ext-imagick: *
- lib-curl: *
- lib-iconv: *
- lib-icu: *
- lib-libxml: *
- lib-openssl: *
- lib-pcre: *
- lib-xsl: *
- honeybee/agavi: dev-honeybee-1.0
- honeybee/honeybee: master@dev
- honeybee/honeybee-agavi-cmf-vendor: master@dev
- honeybee/trellis: master@dev
- roave/security-advisories: master@dev
- sensiolabs/security-checker: ^3.0
- shrink0r/monatic: master@dev
- shrink0r/workflux: master@dev
Requires (Dev)
- php-amqplib/php-amqplib: master@dev
- phpmd/phpmd: ^2.3
- phpunit/phpunit: ^5.0.5
- sami/sami: ^3.0.8
- satooshi/php-coveralls: master@dev
- sebastian/phpcpd: ~2.0.2
- squizlabs/php_codesniffer: ^2.3.3
This package is auto-updated.
Last update: 2024-09-05 18:38:48 UTC
README
蜜蜂-Agavi内容管理框架(CMF)基于蜜蜂CQRS和事件源库,包括对Agavi MVC框架的框架绑定。它提供了一个模块化和可扩展的应用程序基础设施,以促进构建复杂的内容管理系统(CMS),同时支持领域驱动设计(DDD)方法。
此项目正在积极开发中。在提供发布版之前,变更可能很频繁。
#安装
可以按照提供的说明从本项目仓库直接安装应用程序。
##在虚拟机中安装应用程序
以下说明详细说明了在虚拟机上引导应用程序的步骤。虚拟机将配置所需的环境,以运行蜜蜂应用程序。
###先决条件
VirtualBox
- https://www.virtualbox.org/wiki/DownloadsVirtualBox Guest Additions
- https://www.virtualbox.org/manual/ch04.html#idm1784git
- https://git-scm.cnvagrant
- http://downloads.vagrantup.comcomposer
- https://getcomposer.org.cn/download- 您的应用程序的GitHub帐户和存储库
- 对Agavi MVC框架的一些了解将很有帮助
###创建新项目
使用composer
创建项目将引导您配置项目和虚拟机,以用于新的应用程序。我们忽略平台要求,因为项目将安装在虚拟机中。
# replace the last argument with your chosen folder name if required
composer create-project -sdev --ignore-platform-reqs --no-install \
honeybee/honeybee-agavi-cmf-project honeybee-agavi-cmf-project
将克隆存储库,并执行一个后安装脚本,它会提示您进行一些简单的配置问题。
- 当被要求提供GitHub存储库时,您应选择一个您有写访问权限且虚拟机可以访问的存储库名称。您的应用程序需要推送到此存储库,以便虚拟机可以启动、克隆和安装。
- 当被询问是否要配置虚拟机时,您应回答
是
- 当被询问主机名时,您可以根据存储库名称接受默认设置,或选择另一个HTTPS URL,其中您的应用程序将在虚拟机内托管。
- 当
composer
询问您是否希望保留VCS文件时,您可以回答否
###初始化您的存储库
您的应用程序现在已配置完毕,准备好提交到您自己的存储库。有关在GitHub上从源创建新存储库的详细说明,请参阅此处。我们已总结了以下命令
# first create repository at Github cd honeybee-agavi-cmf-project git init git add . git commit -m 'Initialising project' # replace the following Github repository url with your own git remote add origin git@github.com:honeybee/honeybee-agavi-cmf-project.git git push -u origin master
###启动虚拟机
当您的新的仓库公开时,虚拟机即可启动。虚拟机首次初始化时,将克隆您刚刚创建的GitHub仓库。您可以使用以下命令启动机器:
# ensure VirtualBox guest additions are installed! # vagrant plugin install vagrant-vbguest cd honeybee-agavi-cmf-project/dev/box vagrant up # please wait, the virtual machine will be downloaded and installed # provisioning can take up to 30 minutes depending on resources
您将看到控制台输出,显示机器镜像正在下载和配置。在配置过程中,您可能需要输入,但在所有情况下都可以接受默认设置。
###完成安装
当您的虚拟机启动并运行时,您可以通过执行以下命令来完成安装:
vagrant ssh cd /srv/www/honeybee-agavi-cmf-project.local composer install # when prompted you should accept the project installation sudo service nginx restart
应用程序将安装所有依赖项并构建所有必需的资源。这可能需要几分钟。
###访问CMS
当应用程序成功设置后,应可通过以下地址访问:
https://honeybee-agavi-cmf-project.local/
到此为止,它已准备好使用和开发,但此时它不会包含任何数据。如果您以前没有创建过Honeybee应用程序,我们建议您查阅食谱。食谱将引导您从头创建一个演示应用程序,解释您在构建此框架上的应用程序时需要了解的许多概念。
或者,您可能希望按照此处所述从头初始化应用程序。
###挂载源
- Mac OSX
- 在Finder菜单中
- 选择连接到服务器...(⌘K)
- 输入以下地址:
nfs://honeybee-agavi-cmf-project.local/srv/www/
- 在Finder菜单中
- Ubuntu/Linux
mount honeybee-agavi-cmf-project.local:/srv/www/ /home/${USER}/projects/honeybee-agavi-cmf-project
###控制系统服务
以下主要服务在虚拟机上运行,并通过systemd
控制:
- Couchdb
- Elasticsearch
- Converjon
为了启动/停止服务或获取状态,请在虚拟机中使用相应的sudo
命令。
sudo systemctl status|start|stop|restart couchdb|elasticsearch|converjon
打开/关闭虚拟机
尽可能使用以下命令停止虚拟机:
vagrant suspend
并使用以下命令再次唤醒它:
vagrant resume
这将使虚拟机进入睡眠状态,而不是完全关闭,从而运行速度更快。但是,使用挂起/恢复不会重新配置虚拟机的网络接口。为此,需要完全重新启动虚拟机,可以通过调用以下命令来实现:
vagrant reload # is the same as: vagrant halt && vagrant up
##本地安装
即将推出...
##初始化
当Honeybee CMF项目首次安装时,数据库尚未初始化,系统中没有数据。
###初始化存储
提供了系统迁移来创建管理员用户。我们可以执行所有挂起的迁移并使用以下命令初始化数据存储:
composer migration-run -- --all
完成后,您将看到已执行的迁移的摘要。此时系统中没有数据。
###创建管理员用户
我们可以使用以下命令创建管理员用户。
composer user-create
命令将提示输入用户名和电子邮件地址。按照命令指示输入您的选择,然后按照设置密码的指示操作。之后,您可以使用新创建的账户在https://honeybee-agavi-cmf-project.local/登录系统。
######用户注册和电子邮件服务 在正常的用户注册流程中,用户会收到账户验证邮件。在开发环境中,邮件服务是模拟的,实际上不会发送邮件。