Похоже, что директория в дереве / etc / nginx / sites-available
не существует и должна быть создана.
Если вы хотите добавить к рецепту кода операции, вот как вы можете попросить шеф-повара создать для вас каталог:
http://wiki.opscode.com/display/chef/Resources#Resources-Directory
Чтобы исправить это, вам, вероятно, следует добавить это в начало рецепта по умолчанию для nginx:
directory "/etc/nginx/sites-available" do
owner "root"
group "root"
mode "0755"
end
Что бы это ни стоило, я проделал то же самое с Chef (Hosted), EC2 и Amazon Linux. Это заняло у меня некоторое время, но я понял, что почти всегда было проще просто раскатать собственные рецепты. Теперь у меня есть дюжина, которые я сейчас использую, и я удалил все общие Opscode, которые я сначала пробовал.
Фактически, мой рецепт по умолчанию для nginx содержит только одну строку:
`package "nginx"`
Итак, один из способов - это сначала установите его на свой сервер с помощью yum install nginx
, а затем возьмите созданный им файл конфигурации по умолчанию. Верните его в свою кулинарную книгу в качестве шаблона и вставьте строки ERB, чтобы настроить любые значения в соответствии с вашими потребностями.