2016-07-27 17 views
6

Mam trzy serwery ekspresowe napisane na nodejs. Serwery te służą różnym celom, a zatem działają na różnych portach.Uruchamianie wielu serwerów z obrazu w dockingu

Np app1.js na 8000, 5000 i app2.js na app3.js na 5432.

Chcę utworzyć obraz Döcker użyciu pliku Döcker i uruchomić wszystkie te serwery. Czy możemy to zrobić? Jeśli tak, jak możemy to zrobić? Zgodnie z moją wiedzą możemy uruchomić tylko jedno polecenie z pliku dokowanego.

Odpowiedz

5

Możesz zajrzeć do korzystania z Docker Compose.

Każdy serwer miałby własny plik Dockerfile, a plik docker-compose.yml określałby porty, które eksponują i jak wchodzą w interakcje.

3

Sugerowany mechanizm przez Ethana jest prawidłowy do uruchamiania wielu kontenerów doków w doku, ale nie wyjaśnia, dlaczego.

Aby wyjaśnić nieco dalej, każdy kontener dokowania może odradzać wiele procesów (serwerów), ale kontener dookólny wymaga, aby jeden z procesów był na pierwszym planie, a dokowanie cyklu życia kontenera zwykle odzwierciedla cykl życia procesu pierwszoplanowego.

Wiele zalet dokowania zostanie utraconych po uruchomieniu wszystkich procesów w jednym kontenerze dokowania. Dlatego zaleca się posiadanie jednego kontenera do doków na proces.

+0

Dzięki za wyjaśnienie tego. –