Олег Марков
Java 21 в Docker
Введение
Java 21 — это последняя версия популярного языка программирования Java, предлагающая новые возможности и улучшения. Docker, в свою очередь, стал стандартом для контейнеризации приложений, обеспечивая лёгкое распространение и развертывание приложений. Вместе они образуют мощный дуэт для современных разработчиков. В этой статье мы рассмотрим, как запустить Java 21 в Docker, чтобы воспользоваться всеми преимуществами этой интеграции.
Установка Java 21 в Docker
Подготовка среды
Перед тем, как начать, убедитесь, что у вас установлены Docker и Docker Compose на вашем ПК. Если у вас возникает вопрос, поможет ли эта комбинация в вашей повседневной разработке, то ответ — да. Docker позволяет изолировать среды разработки и легко управлять ими.
Создание Dockerfile
Первым шагом будет создание Dockerfile для нашего приложения на Java 21. Dockerfile — это текстовый файл, содержащий инструкции для сборки Docker-образа.
# Используем официальный образ OpenJDK с Java 21
FROM openjdk:21-jdk-slim
# Устанавливаем рабочую директорию
WORKDIR /app
# Копируем файлы нашего приложения в контейнер
COPY . .
# Устанавливаем основной командой запуск приложения
CMD ["java", "-jar", "your-java-application.jar"]
Обратите внимание, что в данном случае мы используем базовый образ openjdk:21-jdk-slim
. Это облегченная версия JDK, идеально подходящая для контейнеризации.
Сборка Docker-образа
После создания Dockerfile нам нужно собрать Docker-образ. Для этого используйте следующую команду в терминале:
docker build -t my-java-app .
Здесь мы создаём образ под названием my-java-app
. Точка в конце команды указывает на текущую директорию, где расположен наш Dockerfile.
Использование Java 21 с Docker
Запуск приложения в контейнере
Теперь, когда наш образ готов, мы можем запустить контейнер, используя команду:
docker run --name my-running-java-app -d my-java-app
Флаг -d
запускает контейнер в фоновом режиме, а --name
задает его имя для упрощения управления.
Контейнеризация в разрезе нового Java
Java 21 предлагает несколько улучшенных функций, таких как альтернативные паттерны, которые можно легко протестировать в среде Docker. Создайте маленький проект, чтобы попрактиковаться с этими нововведениями и протестировать их в контейнере.
Настройка среды
Вы можете легко настроить переменные среды, использовать тома для хранения данных и сетевые параметры для взаимодействия вашего приложения с другими сервисами. Например, добавьте в команду запуска:
docker run -e "ENV_VARIABLE=value" --name my-java-app -d my-java-app
Где -e "ENV_VARIABLE=value"
устанавливает переменную среды ENV_VARIABLE
с соответствующим значением.
Заключение
Docker и Java 21 идеально подходят для разработки и деплоя современных приложений. Использование Docker упрощает управление средами и развёртывание, в то время как Java 21 приносит новейшие функции для разработки. Благодаря контейнеризации, вы можете легко масштабировать ваши приложения, тестировать новые возможности Java и работать с изолированными и согласованными средами. Этот тандем позволяет оставаться на передовой в мире разработки, предоставляя гибкость и эффективность при работе с приложениями.
Карта развития разработчика
Получите полную карту развития разработчика по всем направлениям: frontend, backend, devops, mobile