Answers:
您在这里混了一些问题,因此我将尝试从最后一个问题开始依次解决每个问题,因为这是最容易回答的问题。
是的你可以!此功能当前存在于超级按钮结构中,但是您需要将“文件”(WordPress主题,插件和静态文件)全部保留在存储库中。超级按钮提供了一个配置选项wp-content
,虽然有些欺骗,但该选项使您可以指向任何Git,BZR,Mercurial或SVN存储库。在存储库的根目录中,您可以将所有其他文件放置在WordPress安装目录的根目录中。例如,如果您想添加一个插件“ foo”和一个名为“ client-login.html”的静态文件,则可以这样构造存储库:
.
├── client-login.html
└── wp-content
└── plugins
└── foo
然后,您将使用juju set wordpress wp-client=<url-to-repo>
。您可以在WordPress魅力文档中的 “ wp-content”下了解更多信息。您可以在Github上找到两个示例存储库并提供示例。
请注意,这不是一个单独的网站,而是WordPress网站中的静态内容。如果您希望在Juju Charm的上下文中托管不同网站,位于不同域中,则需要创建一个新的超级按钮以处理这些情况
至于第二个问题,
我想从一开始就添加此功能,但当时还不太可能。现在Juju已经取得了足够的进步,以至于这是可能的,而我正在努力实现这一点。该工作流程涉及使用Juju的从属超级按钮以允许您通过以下方式部署基本的WordPress安装:
juju deploy wordpress-mu
然后,你就部署下属的魅力,wordpress-site
,在此基础上的顶部。从那里开始,charm将使用其自己的wp内容,配置和apache / nginx配置对其进行配置,但是它将共享相同的核心基础。因此,像domain
,wp-content
和这样的配置选项debug
将移至该单独的超级按钮。最后,您可以在单个wordpress-mu
部署上部署多个wordpress站点超级按钮,并且每个组件都独一无二,并且仍然可以扩展wordpress-mu(这反过来可以扩展所有其他WordPress站点部署)。命令示例如下:
juju deploy wordpress-mu
juju deploy mysql
juju deploy wordpress-site personal-blog
juju deploy wordpress-site professional-blog
juju deploy wordpress-site client-x
juju add-relation personal-blog wordpress-mu
juju add-relation professional-blog wordpress-mu
juju add-relation client-x wordpress-mu
juju add-relation personal-blog mysql
juju add-relation professional-blog mysql
juju add-relation client-x mysql
最终,您仍然只有一台用于WordPress的服务器,但是您已经将WordPress的三个唯一实例部署到了该服务器,您可以使用Juju对其进行独立控制。