Я пытаюсь выяснить докер в сотый раз.Теперь я создаю spring-boot
простое приложение и создаю docker image
для него:
FROM openjdk:8
EXPOSE 8080
ADD /build/libs/hello-docker-0.0.1-SNAPSHOT.jar hello-docker.jar
ENTRYPOINT ["java", "-jar", "hello-docker.jar"]
Что я делал шаг за шагом:
1) Создайте свое приложение (в результате моеhello-docker-0.0.1-SNAPSHOT.jar
появился в папке build
)
2) перемещен в каталог, где расположен Docker file
и выполнил команду: docker build -f Dockerfile -t springdocker .
3) Запустите этот image
как контейнер: docker run -p 8080:8080 springdocker
В результате мое приложение успешно запустилось.
Но теперь я решил что-то изменить в своем приложении.Я сделал это и попытался повторить все шаги.1-> 2-> error
На 2 степа было создано новое изображение, а старое было в активном состоянии.Оказывается, мне нужно остановить старый и запустить новый.
это не удобно.Я интуитивно понимаю, что это не так, как это должно работать.Я не понимаю, как правильно обновить контейнер.Я постоянно меняю свое приложение, и если мне нужно остановить контейнер, создать изображение и запустить его - это не удобство, а сложность.С таким же успехом я могу остановить свое приложение и запустить новое без докера.Я понимаю, что не понимаю, как это работает, и я хочу, чтобы кто-то объяснил мне, как это сделать.