Da się to jakoś zrobić szybciej? Nie chce mi się przy każdym updejcie obrazu kasować kontenera i od nowa ustawiać wszystkie parametry przy starcie nowego obrazu.
Wszystkie tutoriale mówią o jakimś docker compose, docker yml.
Nie da się tego zrobić prościej na zasadzie "pobierz nowy obraz i redeplojuj kontener z zachowaniem konfiguracji"?
#docker #programowanie #homelab #konteneryzacja #informatyka
Tak, tak to działa. Nie musisz myśleć co jest w nowym obrazie i modyfikować istniejącego kontenera, bo właśnie po to dostajesz nowy, gotowy obraz.
Oraz tak, konfiguracja powinna być wydzielona, czy to przez zmienne środowiskowe czy przez wolumeny. Jeśli chodzi o docker compose to jest to wrapper na konfigurację, która robisz z palca plus kilka innych funkcji.
@NrmvY no ale tak jest właśnie najprościej...
Tworzysz jeden plik, w którym trzymasz załą konfigurację, łącznie ze zmiennymi środowiskowymi. Jak chcesz podbić wersję, to podbijasz, usuwasz istniejący kontener i odpalasz na nowo z pliku.
I jedna uwaga - raczej powinno się unikać korzystania z tagu "latest", lepiej wskazywać konkretną wersję.
@dext3
"Jak chcesz podbić wersję, to podbijasz, usuwasz istniejący kontener i odpalasz na nowo z pliku."
o to mi chodzi jak to zrobić na Docke Desktop? Bo normalnie jak odpalam obraz to mam takie okno i musze wszystko z palca wprowadzać ręcznie.
@dext3 z latest tak samo w mavenie też każdy zaleca konkretne wersje i ich kontrolowania. Bo nowa wersja i się wszystko wypierdziela. A tak potrzeba wybierasz, testujesz, pozostajesz lub wracasz do poprzedniej.
@NrmvY kurde nie wiem, nigdy nie korzystałem z takich narzędzi (kiedyś miałem Portainera, ale mnie nie zachwycił).
Ja korzystam z Dockera jedynie przez CLI, w zasadzie to tak pracują chyba wszyscy.
W zależności od tego co chcesz zrobić, możesz stworzyć własny obraz za pomocą Dockerfile (np. z własną aplikacją, albo jakimś usprawnieniem/modyfikacją czegoś gotowego).
Ja korzystam z docker-compose w celu konfiguracji wszystkiego i uruchomienia "na raz" kilku serwisów.
To się tylko wydaje toporne, ale mając plik i wersjonując go sobie w repozytorium git mam historię zmian, a uruchomienie to krótka komenda [ docker-compose up -d . ]
Zamiast klikać i wypełniać jakieś pola, mam wszystko w pliku.
Docker Desktop pozwala korzystać z poleceń w terminalu, i tę drogę zarządzania proponuję opanować.
@NrmvY z poziomu terminala zrobisz to w przeciągu minuty. stopujesz kontener, usuwasz poprzedni obraz, robisz pulla, przechodzisz do katalogu gdzie masz yamla i lecisz z docker compose
@weirdo2k23 @dext3 już znalazłem rozwiązanie. Docker Desktop ma opcję "kopiuj komendę docker run" na liście z kontenerami. Komenda ta ma w sobie całą konfigurację kontenera.
Czyli: usuwam kontener, aktualizuje obraz, klikam w run.bat z komendą i fajrant.
Zaloguj się aby komentować