Konteneryzacja aplikacji

0

Cześć

Mam do wrzucenia na serwer aplikację która składa się z webApi w .Net core 3.1, bazy danych mssql oraz osobnej aplikacji w Angularze. Chcę to zrobić z wykorzystaniem dockera i tu nasuwają mi się pytania, jak do tego podejść, aby było najlepiej.

  • wrzucić wszystko w jeden kontener
  • wrzucić do jednej sieci osobno kontener z .Net Core + msSql i osobno apkę w angularze
  • wszystko umieścić w osobnych kontenerach

Które podejście jest poprawne? dopiero zaczynam zabawę z dockerem i jeszcze do końca nie wszystko łapię.

Dodatkowo przy bazie danych chcę aby moje dane nie uległy zniszczeniu przy jakimś usunięciu kontenera, więc wiem, że muszę wykorzystać "Data volumes". Ma ktoś jakiś dobry artykuł jak to poprawnie zrobić przy mssql?

Ostatnia kwestia to sprawa vps, gdzie się to najbardziej opłaca wrzucić?

Będę wdzięczny za każdą pomoc :)

2
mlody18 napisał(a):

Cześć
Mam do wrzucenia na serwer aplikację która składa się z webApi w .Net core 3.1, bazy danych mssql oraz osobnej aplikacji w Angularze. Chcę to zrobić z wykorzystaniem dockera i tu nasuwają mi się pytania, jak do tego podejść, aby było najlepiej.

  • wrzucić wszystko w jeden kontener
  • wrzucić do jednej sieci osobno kontener z .Net Core + msSql i osobno apkę w angularze
  • wszystko umieścić w osobnych kontenerach

Które podejście jest poprawne? dopiero zaczynam zabawę z dockerem i jeszcze do końca nie wszystko łapię.

Osobne kontenery -> komunikacja pomiędzy nimi. Gdy chcesz zrobić modyfikację na froncie to nie pchasz całej aplikacji od nowa tylko jeden kontener. Dodatkowo polecam przy budowaniu kontenerów korzystać z minimalnych obrazów bazowych oraz wykorzystywać multi-stage builds.

Dodatkowo przy bazie danych chcę aby moje dane nie uległy zniszczeniu przy jakimś usunięciu kontenera, więc wiem, że muszę wykorzystać "Data volumes". Ma ktoś jakiś dobry artykuł jak to poprawnie zrobić przy mssql?

Docker volumes to jedno, a współdzielenie ich pomiędzy kontenerami to drugie. Artykuł? Dokumentacja wyjaśnia praktycznie wszystko:
Volumes
Manage data

1 użytkowników online, w tym zalogowanych: 0, gości: 1