Tools

Otto 0.1.1 unter der Lupe

Otto – die ersten Schritte
Keine Kommentare

Vor ein paar Tagen hat HashiCorp, das Unternehmen hinter Vagrant, mit Otto eine vollständig neue all-in-one-Lösung vorgestellt. Es geht um nicht weniger als den „Successor to Vagrant“. Bei solch großen Versprechungen ist es natürlich angebracht, einen genaueren Blick zu riskieren.

Deswegen wollen wir die ersten Schritte mit Otto unter Windows 7 bzw. Ubuntu vorstellen.

Otto 0.1.1

Otto ist eine App-Lifecycle-Verwaltung. Damit lassen ganz einfach und schnell Entwicklungsumgebungen mit Hilfe von Vagrant ab Version 1.7.4 und VirtualBox (oder VMware) erzeugen und ganze Deployments – aktuell nur für AWS – ausführen. Otto erkennt dabei die eingesetzte Sprache und wählt anhand derer die zu installierenden Komponenten.

Zur Zeit werden Ruby, Go, PHP und NodeJS unterstützt. Abhängig von der Sprache werden bei der Initialisierung alle nötigen Dateien erzeugt. Für PHP z.B. liefert Otto von Haus aus eine Vagrantfile unter anderem mit PHP 5.6, Composer und Git. Dazu aber später mehr.

Otto ist komplett in Go geschrieben und lässt sich komplett über eine sogenannte „Appfile“ verwalten. Die Appfile-Syntax nutzt HCL als Konfigurationssprache.

Alles Vorbereiten – Los geht’s!

Wir nutzen Vagrant 1.7.4 zusammen mit VirtualBox ab Version 4.0. Wir beginnen damit, die Umgebung unter Ubuntu 15.04 zu installieren.

Vagrant installieren / auf neue Versionen patchen

Wir benötigen mindestens Vagrant in der Version 1.7.4 (17. Juli 2015). Unter Ubuntu ist jedoch nur Vagrant 1.6.5 verfügbar, daher können wir hier nicht mit APT arbeiten. Wir laden das Paket einfach via wget und installieren es mit dpkg.

wget https://dl.bintray.com/mitchellh/vagrant/vagrant_1.7.4_x86_64.deb
dpkg -i vagrant_1.7.4_x86_64.deb

VirtualBox installieren

VirtualBox lässt sich einfach und schnell installieren. Wir führen einfach folgenden Befehl aus:

sudo apt-get install virtualbox

Otto installieren

Die Installation verläuft recht schnell und einfach. Wir laden uns das Zip herunter, entpacken es und legen Otto unter ~/otto ab. Zum Schluss fügen wir Otto zu unseren Umgebungsvariablen hinzu.

mkdir -P ~/otto
cd ~/otto
wget https://dl.bintray.com/mitchellh/otto/otto_0.1.1_linux_amd64.zip
sudo export PATH $PATH:~/otto

Nun führen wir otto aus, und wenn alles geklappt hat bekommen wir folgenden Output:

otto-bild-1

Umgebung unter Windows installieren

Unter Windows benötigen wir ebenfalls Vagrant 1.7.4 und VirtualBox ab Version 4.0. Dazu laden wir uns einfach VirtualBox und Vagrant herunter und installieren beide, anschließend müssen wir Windows neu starten.

Otto installieren

Anschließend laden wir Otto herunter und entpacken es uns optimalerweise unter C:\HashiCorp\Otto. Nun müssen wir Otto noch zu den Umgebungsvariablen hinzufügen. Dazu drücken wir einfach Windowstaste + Pause, gehen in die Erweiterte Systemeinstellungen > Umgebungsvariablen und fügen am Ende der PATH-Variable „;C:\HashiCorp\Otto“ hinzu. Wichtig ist, dass euer Eintrag mit einem Semikolon geprefixed ist!

Lasst den Spaß beginnen

Wie eingangs bereits erwähnt ist Otto recht intelligent und weiß automatisch, welche Umgebung er für welche Sprache installieren muss.

In unserem Beispiel erstellen wir uns einfach einen neuen Ordner ~/otto-php-test und erzeugen darin eine index.php, die uns „Hello World“ ausgibt.

mkdir ~/otto-php-test
cd ~/otto-php-test
echo "<?php echo 'Hello World';" > index.php

Wir wollen jedoch die Kontrolle über unser Projekt behalten. Darum sagen wir Otto, dass er uns ein PHP-5.6-Projekt mit dem Namen „otto-php-test“ erzeugen soll. Hierfür legen wir eine Appfile mit folgendem Inhalt an:

```hcl application { name = "otto-php-example" type = "php" }
customization "php" { php_version = "5.6" } ```

Dies ist übrigens die Standardkonfiguration für PHP, wenn keine Appfile angegeben wurde. „name“ und „type“ sind Pflichtfelder für die application-Sektion!

Nun müssen wir mit otto compile einmal alle Dateien im wahrsten Sinne des Wortes kompilieren.

otto-bild-2

Otto legt uns einen /.otto-Ornder an, in dem unter anderem unsere Vagrantfile abliegt. Zudem wird eine .ottoid-Datei angelegt, die nicht bearbeitet werden darf. Darüber zieht Otto Rückschlüsse zur aktuellen Umgebung.

Nun ist es so weit! Wir können unsere Umgebung zum ersten Mal mit otto dev starten. Initial lädt uns Otto nun die Standard-Vagrant-Box hashicorp/precise64 herunter und fügt alle Abhängigkeiten hinzu.

… und leider bricht Otto hier unter Ubuntu und Windows auch ab.

Probleme

Leider war es uns nicht möglich, mit Otto 0.1.1 unter Ubuntu und Window über den Compile-Step hinaus zu kommen. Zudem hat Otto aktuell noch Probleme, mit Dateien, die größer als 2GB sind, umzugehen.

otto-bild-3

Fazit

Otto ist noch in der Entwicklung – und das merkt man auch. Das Kompilieren und automatische erkennen funktioniert in der Praxis super, doch leider kommt man nicht darüber hinaus. Ebenfalls ist es schade, dass es noch keinen Deploymentprozess für FTP, SFTP / SCP gibt, aber hier soll auf jeden Fall noch nachgebessert werden – für Version 0.2 wurden schon neue Features angekündigt. Zum Beispiel wird es möglich sein, eigene Apps und Plug-ins in Otto zu integrieren.

HTML & CSS Days 2019

HTML und CSS für Backend-Entwickler (Teil 1 + 2)

mit Jens Grochtdreis (webkrauts)

Layouts mit CSS-Grid meistern

mit Florence Maurice (maurice-web)

IT Security Summit 2019

Sichere Logins sind doch ganz einfach!

mit Arne Blankerts (thePHP.cc)

Hands-on workshop – Hansel & Gretel do TLS

mit Marcus Bointon (Synchromedia Limited)

 

Aufmacherbild: Traces of bare human feet in the first snow von Shutterstock / Urheberrecht: farmer’s daughter

Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -