Конфигурация развертывания
[buildout]
extends =
buildout.cfg
parts +=
debug-instance
zeoserver
varnish-build
varnish-instance
[zeoserver]
recipe = plone.recipe.zope2zeoserver
zope2-location = ${instance:zope2-location}
zeo-address = ${instance:zeo-address}
[instance]
recipe = plone.recipe.zope2instance
zope2-location = ${zope2:location}
zeo-client = true
zeo-address = 8100
zodb-cache-size = 5000
zeo-client-cache-size = 300MB
debug-mode = off
verbose-security = off
eggs += Products.CacheSetup
[debug-instance]
recipe = collective.recipe.zope2cluster
instance-clone = instance
http-address = 8081
debug-mode = on
verbose-security = on
[varnish-build]
recipe = zc.recipe.cmmi
url = http://downloads.sourceforge.net/varnish/varnish-2.0.2.tar.gz
[varnish-instance]
recipe = plone.recipe.varnish
daemon = ${buildout:parts-directory}/varnish-build/sbin/varnishd
bind = 127.0.0.1:8082
backends = 127.0.0.1:8080
cache-size = 1G
Здесь мы видим следующее:
- Ссылаясь на главный файл buildout.cfg, мы расширяем и переписываем его конфигурации более подходящей для развертывания проекта на сервере.
- Устанавливаем ZEO сервер с двумя инстансами, instance и debug-instance (см. plone.recipe.zope2zeoserver и plone.recipe.zope2instance)
- Компилируем кеш-серевр Varnish (см. plone.recipe.varnish)
Для сборки такой среды вы должны явно указать конфигурационный файл:
$ ./bin/buildout -c deployment.cfg
Чтобы запустить Zope и Plone, вам понадобиться запустить ZEO сервер, инстанс и сервер Varnish:
$ ./bin/zeoserver start $ ./bin/instance start $ ./bin/varnish-instance
Если нужно поднять инстанс для отладки, вы можете запустить debug-instance в режиме переднего плана:
$ ./bin/debug-instance fg
Также будет созданы скрипты для бекапа ZODB (./bin/repozo) и для паковки базы данных (./bin/zeopack).
Дополнительные опции
zc.builout очень гибкая система. В ней сравнительно просто создавать новые рецепты, можно и комбинировать существующее рецепты более мощным образом. Найти рецепты можно на Cheese Shop или ознакомиться с исходным кодом собственных рецептов Plone для понимания процесса создания рецептов.

Предыдущий: Cоздание нового пакета
