2016-07-27 7 views
10

Kann ich mit CoreOS rkt oder einem ähnlichen Tool mein Docker-Compose-Projekt ausführen?Kann ich ein Docker-Compose-Projekt mit CoreOS rkt ausführen/konvertieren?

Und/oder gibt es eine Möglichkeit, ein Docker-Compose-Projekt in etwas Ähnliches zu konvertieren, für CoreOS und rkt?

Mein Docker-Compose-Projekt funktioniert gut auf localhost und auf den Produktionsservern. Aber ich denke, ich mag das Sicherheitsmodell von CoreOS und rkt besser - dann müsste ich die Container mit Root-Rechten auf meiner Entwicklungsmaschine nicht ausführen (richtig?).

Hier scheint Dokumente zu sein, wie man einen einzigen Docker-Container mit rkt: https://coreos.com/rkt/docs/latest/running-docker-images.html - aber ich möchte Docker-Compose wie Funktionalität, nicht nur ein einzelner Container.

(Ich verwende derzeit eine Ubuntu-basierte Linux-Distribution.)

+1

Ich bin auch daran interessiert. Es scheint zu https://github.com/jfusterm/compose2fleet zu kommen, für das ich noch keine Zeit hatte. Alternativ könnten Sie etwas wie Kubernetes einrichten, aber das scheint mir übertrieben. – dancek

+0

@dancek compose2fleet klingt interessant, könnte was ich hoffe. - Und genau jetzt habe ich auch keine Zeit, es zu testen: - P aber später – KajMagnus

+1

Hier ist eine Möglichkeit, eine Docker Compose-Anwendung in Kubernetes-Manifeste zu verwandeln: http://blog.kubernetes.io/2016/11/kompose -tool-gehen-von-docker-komponieren-zu-kubernetes.html. Kubernetes kann CoreOS + rkt betreiben. Fühlt sich ein bisschen kompliziert an, aber auch Kubernetes hinzuzufügen. – KajMagnus

Antwort

1

rkt-compose eine leichte Alternative zu kubernetes und compose2fleet ist. rkt-compose unterstützt eine Teilmenge der docker-compose-Dateisyntax und führt alle Dienste einer docker-compose-Datei innerhalb eines einzelnen Pods in einem umschlossenen rkt-Prozess ohne Abhängigkeiten zu anderen Werkzeugen als rkt und docker (für Build) aus. Zur Unterstützung von Service Discovery und Health Checks kann Consul Integration optional aktiviert werden.

Ich habe die aktuelle rkt-compose v0.1.0 release erfolgreich gegen mehrere meiner alten Docker-Compose-Projekte getestet.

Offenlegung: Ich habe rkt-compose während des Spielens mit rkt entwickelt und Golang lernen.

Sicherheit Anmerkung: Wie in Docker müssen rkt Container auch als root ausgeführt werden. Das Ausführen von Containern als nicht privilegierter Benutzer wird nicht unterstützt. Ich untersuche gerade runc: Es ist auch mit CoreOS geliefert und in seinem aktuellen Master-Status ermöglicht es Ihnen, einen Container als unprivilegierter Benutzer mit einigen Problemumgehungen und Einschränkungen auszuführen, aber Sie können Docker-Compose-Dateien nicht direkt darauf ausführen.

+0

Ok, das sieht interessant aus. (Ich werde es jetzt nicht als die akzeptierte Antwort bezeichnen, da es noch nicht dokumentiert und noch in der Entwicklung ist, richtig.) Hmm, ich habe es nicht ganz verstanden: benutzt es direkt 'docker-compose.yml', oder konvertiert es diese Datei in eine Kubernetes-Konfigurationsdatei und verwendet stattdessen die Kubernetes-Datei? und danach würde man die Kubernetes-Datei bearbeiten? (Beide Ansätze sind aus meiner Sicht in Ordnung) – KajMagnus

+0

Aktualisiert meine Antwort: Es führt docker-compose.yml Dateien direkt und hat keine Abhängigkeit zu Kubernetes. Ich habe das Projekt endlich dokumentiert und eine Veröffentlichung erstellt. Feedback ist willkommen. – mxg

Verwandte Themen