Może ktoś wytłumaczyć mi/podesłać linki. Do czego potrzebny mi Docker :) Tworzę aplikację #nodejs i #mongodb. Czy jeśli użyje dockera to "przeniesienie" na produkcję będzie znacznie prostsze? Czy dzięki temu pozbędę się np mongodb z komputera i będzie działać tylko w kontenerze, czyli będę mógł używać np nie wspieranego Ubuntu 19 a mongo i tak będzie działać w Ubuntu 18 na dokerze?
@cacus: Docker to taka paczka z softem, budujesz sobie kontener, który ma w sobie wszystkie biblioteki i kod Twojej aplikacji. Skonfigurowane jest tak, że jak odpalasz kontener to odpala się Twoja apka. Do tego drugi kontener z bazą mongoDB i tyle. Nie interesuje Cię na jakim systemie to odpalasz, ważne, żeby był docker daemon.
@cacus: Jeśli już się nauczysz Dockera, to wdrożenia powinny być prostsze i szybsze i łatwiej konfigurowalne.
Ale Docker jest mniej stabilny, więc przydaje się jakiś health check. Szukanie błędów będzie trudniejsze, bo trzeba się będzie najpierw dostać do kontenera (Chyba, że wystarczą Ci logi, to zawsze możesz współdzielić foldery między kontenerem a hostem).
Tak, będziesz mógł wybrać na jakim systemie, to będzie działać wewnątrz kontenera.
@cacus tak, przeniesienie na produkcję powinno być prostsze, choć to zależy co umiesz i znasz lepiej. Mongo DB będzie działać w zbudowanym kontenerze, ale dane mogą być trzymane na hoście, wszystko zależy od konfiguracji. I owszem, mógłbyś używać niewspieranego systemu na hoście. Generalnie z kontenerami masz jako taką pewność, że wszędzie wszystko będzie działać jednakowo, bo całe otoczenie danej aplikacji ogranicza się do kontenera.
Dzięki dockerowi odchodzi problem „dziwne, u mnie działa”, bo masz pewność, że kontener zadziała tak samo na każdej maszynie. Korzystanie z dockerów jest również bezpieczniejsze na produkcji, bo wszelkie krytyczne błędy/włamania przez luki w aplikacji są odizolowane od systemu hosta, czyli ewentualne szkody będą tylko w obrębie danego kontenera.
@orkin2913: @Solidly: @Maav: @yggdrasil: Dzięki, po pracy postaram się podziałać z tym, a jeszcze pytanie jak wygląda development? VSCode potrafi wbic sie jakoś w Kontener żeby tam cos zmieniać czy robie lokalnie i wrzucam tam?
@cacus Najprostszym sposobem jest podmontować sobie zewnętrzne źródło do kontenera, a wewnątrz oczekiwać na zmiany w kodzie jakimś nodemonem, który będzie restartował serwer bez potrzeby ubijania kontenera. Wtedy możesz sobie spokojnie developować u siebie w VSCode, a docker będzie widział zmiany z Twojego lokalnego katalogu.
@cacus Najprostszym sposobem jest podmontować sobie zewnętrzne źródło do kontenera, a wewnątrz oczekiwać na zmiany w kodzie jakimś nodemonem, który będzie restartował serwer bez potrzeby ubijania kontenera. Wtedy możesz sobie spokojnie developować u siebie w VSCode, a docker będzie widział zmiany z Twojego lokalnego katalogu.
To jest ok, tylko że na prodzie taki kontener będzie wymagał raczej innej konfiguracji. Raczej nie chcesz mieć aplikacji w kontenerze zależnej od jakichś plików na hoście.(no
@Solidly: Można podmontować zewnętrzne źródła pod katalog, w którym produkcyjnie znajdują się pliki projektu umieszczone tam podczas buildu obrazu. Dzięki temu nadpisujemy zawartość i możemy pracować na lokalnych plikach
Tworzę aplikację #nodejs i #mongodb.
Czy jeśli użyje dockera to "przeniesienie" na produkcję będzie znacznie prostsze?
Czy dzięki temu pozbędę się np mongodb z komputera i będzie działać tylko w kontenerze, czyli będę mógł używać np nie wspieranego Ubuntu 19 a mongo i tak będzie działać w Ubuntu 18 na dokerze?
Proszę o informacje "Jak chłop krowie na rowie" :)
#programowanie #docker
Ale Docker jest mniej stabilny, więc przydaje się jakiś health check. Szukanie błędów będzie trudniejsze, bo trzeba się będzie najpierw dostać do kontenera (Chyba, że wystarczą Ci logi, to zawsze możesz współdzielić foldery między kontenerem a hostem).
Tak, będziesz mógł wybrać na jakim systemie, to będzie działać wewnątrz kontenera.
Generalnie z kontenerami masz jako taką pewność, że wszędzie wszystko będzie działać jednakowo, bo całe otoczenie danej aplikacji ogranicza się do kontenera.
To jest ok, tylko że na prodzie taki kontener będzie wymagał raczej innej konfiguracji. Raczej nie chcesz mieć aplikacji w kontenerze zależnej od jakichś plików na hoście.(no