Назад | Перейти на главную страницу

Vagrant / chef - поваренная книга nginx extend

Я новичок в использовании chef, особенно с vagrant, так что это, скорее всего, будет глупым вопросом для более опытных пользователей.

Я использую эту поваренную книгу: https://github.com/opscode-cookbooks/application_nginx

Я просто хочу добавить свою конфигурацию сайта (vhost).

Это должно быть одно из следующих значений:

  1. Добавить мой рецепт и шаблон прямо в кулинарную книгу
  2. Создайте свою собственную кулинарную книгу, которая некоторым образом расширяет кулинарную книгу nginx, добавляя только то конкретное поведение, которое мне требуется.

Вариант 1 мне не кажется правильным, и я понятия не имею, как выполнить вариант 2, не разделяя полностью кулинарные книги.

может кто-нибудь посоветовать, как это достигается?

Если вы просто хотите настроить виртуальный хост через nginx, вероятно, вы захотите использовать nginx Кулинарная книга. В application_nginx поваренные книги не предназначены для непосредственного использования; скорее это зависимость применение Кулинарная книга. Если вы только начинаете работать с шеф-поваром, я бы пока избегал поваренной книги приложения, поскольку ее использование довольно сложно.

Правильно будет создать свою собственную кулинарную книгу для настройки вашего сайта и использовать поваренную книгу nginx внутри нее. Относитесь к сторонним кулинарным книгам как к общим библиотекам для использования в ваших собственных кулинарных книгах, а не как к чему-то, что вы разветвляете и изменяете, чтобы сделать специфичным для вашего приложения (приложений).

Например, рецепт по умолчанию в вашей кулинарной книге может быть таким:

# run the nginx::default recipe to install nginx
include_recipe "nginx"

# deploy your sites configuration from the 'files/' directory in your cookbook
cookbook_file "#{node['nginx']['dir']}/sites-available/example.com" do
  owner "root"
  group "root"
  mode  "0644"
end

# enable your sites configuration using a definition from the nginx cookbook
nginx_site "example.com" do
  enable true
end