Контейнеризация приложений на Spring Boot с Docker
Docker упаковывает приложение и все окружение в контейнер
Контейнеры — изолированные и воспроизводимые, как «мини-серверы»
Позволяют запускать Spring Boot где угодно — от локальной машины до облака
Основные компоненты: Dockerfile → образ → контейнер
Подробно: Контейнеризация Spring Boot приложений
Что такое Docker?
Docker — это инструмент, который позволяет создавать, запускать и управлять изолированными окружениями (контейнерами) для приложений. Он решает проблему: «У меня работает локально, а на сервере — нет».
Контейнер — это как виртуальная машина, но легковеснее: он использует ядро хост-системы, но имеет свое окружение (файлы, библиотеки, конфигурации). Это делает развертывание Spring Boot-приложения в любом месте предсказуемым и одинаковым.
Что такое Dockerfile?
Dockerfile — это текстовый скрипт, описывающий, как собрать Docker-образ.
Пример Dockerfile для Spring Boot:
FROM eclipse-temurin:17-jdk-jammy
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java","-jar","/app.jar"]
Сборка образа:
docker build -t my-spring-app .
Запуск контейнера:
docker run -p 8080:8080 my-spring-app
-p 8080:8080 — проброс порта с контейнера на хост
my-spring-app — имя образа, который мы только что собрали
