Wie konfiguriere ich Chef Solo, um Nginx auf einer neuen Vagrant-Box zu installieren?

8

Ich bin neu bei Chef und die Dokumentation (sogar die Homepage ihrer Website) lässt meinen Kopf rotieren. Ich bin mir nicht einmal sicher, ob ich es für den richtigen Zweck verwende.

Meine Absicht ist es, ein Vagrantfile einzurichten, das Chef Solo anweist, einige Software automatisch zu installieren, wenn ich eine neue Box hochfahre. Das ist einer der von Chef Solo beabsichtigten Zwecke, bin ich richtig?

Ich bin mir nicht wirklich sicher, ob dies eine der ist, aber wie auch immer.

Mein erstes Ziel ist es, Chef Solo dazu zu bringen, nginx für mich zu installieren. In meinem Projekt habe ich das Kochbuch für nginx geklont:

%Vor%

Ich habe meine Vagrantfile so bearbeitet, dass sie wie folgt aussieht:

%Vor%

Als ich vagrant up ausgeführt habe, habe ich einige Fehler bekommen, dass einige Kochbücher nicht gefunden wurden ( build-essential , apt , etc), also klonte ich sie aus ihren entsprechenden Repos. Jetzt, wenn ich vagrant up , bekomme ich diese Ausgabe:

%Vor%

Chef nie erfolgreich abgeschlossen! Alle Fehler sollten in der obigen Ausgabe sichtbar sein. Bitte korrigieren Sie Ihre Rezepte, so dass sie richtig abgeschlossen werden.

Wie kann ich meine Rezepte so korrigieren, dass sie richtig ausgeführt werden?

    
Ben Harold 01.10.2013, 20:34
quelle

2 Antworten

23

Um einen Koch effektiver zu verwenden, rate ich zur Installation der folgenden Vagrant-Plugins:

%Vor%

Berkshelf ist ein Tool zum Verwalten von Kochbuchabhängigkeiten. Das Omnibus-Plug-In ist nützlich, um sicherzustellen, dass Sie die neueste Version des Kochs verwenden.

Das folgende Beispiel zeigt, wie einfach es ist, etwas wie nginx zu installieren.

Beispiel

%Vor%

Berkshelf

Listet die erforderlichen Kochbücher auf. Berkshelf lädt sie (und ihre Abhängigkeiten) von der Opscode Community-Website herunter.

%Vor%

Vagrantfile

Die folgende vagrant-Datei installiert nginx und macht es auf Port 8080 des Host-Rechners verfügbar:

%Vor%

Anmerkungen:

  • In diesem Beispiel wird CentOS verwendet. Sollte auf Ubuntu genauso gut funktionieren.
Mark O'Connor 01.10.2013, 22:25
quelle
0

Hi Ich bin auf dasselbe Problem gestoßen und während der Suche bin ich auf dein Problem gestoßen. Ich habe es mit einfachen APT-Rezept gelöst. Grund warum Sie es brauchen, weil Sie apt-get update auf der neuen Instanz haben müssen, bevor Sie Pakete installieren können. das ist alles.

    
titus 22.10.2013 16:57
quelle

Tags und Links