2016-07-27 27 views
10

Czy mogę użyć CoreOS rkt lub jakiegoś narzędzia pokrewnego do uruchomienia mojego projektu Docker-Compose?Czy mogę uruchomić/przekonwertować projekt Docker-Compose z/na CoreOS rkt?

I czy jest jakiś sposób konwersji projektu Docker-Compose na coś podobnego, dla CoreOS i rkt?

Mój projekt Docker-Compose działa dobrze na serwerze lokalnym i na serwerach produkcyjnych. Ale myślę, że bardziej podoba mi się model bezpieczeństwa CoreOS i rkt - wtedy nie musiałbym uruchamiać kontenerów z, w rezultacie, uprawnieniami roota, na mojej maszynie programistycznej (prawda?).

Tutaj wydają się być dokumenty na temat uruchamiania pojedynczego kontenera Docker z rkt: https://coreos.com/rkt/docs/latest/running-docker-images.html - ale chcę funkcji Docker-Compose, a nie tylko jednego kontenera.

(Obecnie używać Ubuntu opartego na dystrybucji Linuksa.)

+1

Jestem również zainteresowany tym. Wygląda na to, że https://github.com/jfusterm/compose2fleet nie miałem czasu spróbować. Alternatywnie możesz ustawić coś takiego jak Kubernetes, ale wydaje mi się to przesadne. – dancek

+0

@dancek compose2fleet brzmi interesująco, może być tym, na co mam nadzieję. - I od tej pory też nie mam czasu, aby to przetestować: - P, ale później: – KajMagnus

+1

Oto sposób przekształcania aplikacji Docker Compose w manifesty Kubernetes: http://blog.kubernetes.io/2016/11/kompose -tool-go-from-docker-compose-to-kubernetes.html. Kubernetes może uruchomić CoreOS + rkt. Wydaje się jednak nieco skomplikowane, aby dodać również Kubernetes. – KajMagnus

Odpowiedz

1

rkt-compose jest lekką alternatywą dla kubernetes i compose2fleet. rkt-compose obsługuje podzbiór składni pliku dokowanego i uruchamia wszystkie usługi pliku do tworzenia dokerów w ramach pojedynczego stringu w opakowanym procesie rkt bez zależności od innych narzędzi niż rkt i docker (dla kompilacji). W celu obsługi wykrywania usług i sprawdzania kondycji integracja może być opcjonalnie włączona.

Z powodzeniem przetestowałem obecny model rkt-compose v0.1.0 release w odniesieniu do kilku moich starych projektów do tworzenia dokerów.

Ujawnienie: Rozwinąłem rkt-compose podczas zabawy z rkt i nauki golang.

Adnotacja zabezpieczeń: Podobnie jak w przypadku kontenerów docker rkt, należy je uruchamiać również jako root. Uruchomienie kontenerów jako nieuprzywilejowanego użytkownika nie jest obsługiwane. Obecnie badam numer runc: jest on również dostarczany wraz z CoreOS, a w bieżącym stanie głównym pozwala naprawdę uruchomić kontener jako nieuprzywilejowany użytkownik z niektórymi obejściami i ograniczeniami, ale nadal nie można uruchomić bezpośrednio na nim plików dokowanych.

+0

Ok, to wygląda interesująco. (Nie będę go teraz uznawał za akceptowaną, ponieważ wydaje się, że nie jest jeszcze udokumentowany i nadal jest rozwijany, prawda.) Hmm, nie do końca rozumiem: czy używa bezpośrednio 'docker-compose.yml', lub czy przekształca ten plik w plik konfiguracyjny Kubernetes i zamiast tego używa pliku Kubernetes? a potem można edytować plik Kubernetes? (oba podejścia są w porządku z mojego punktu widzenia) – KajMagnus

+0

Zaktualizowałem odpowiedź: uruchamia bezpośrednio pliki docker-compose.yml i nie ma zależności od Kubernetes. W końcu udokumentowałem projekt i stworzyłem wersję. Informacje zwrotne są mile widziane. – mxg