Karabas интернет-магазин
сетевого оборудования
Alexandr Yak 31 авг. 2023 Alexandr Yak 54

Пример dockerfile spring

Dockerfile — это текстовый файл, который содержит инструкции для создания Docker-образа. Эти инструкции включают в себя настройку операционной системы, установку программ, копирование файлов и другие команды, необходимые для создания и настройки окружения внутри контейнера.

Пример dockerfile для spring

Dockerfile для Spring приложения

Dockerfile - это текстовый документ, который содержит все команды, которые пользователь может вызвать в командной строке для создания образа Docker. В этой памятке мы рассмотрим, как создать Dockerfile для Spring приложения.

Структура Dockerfile

Вот пример Dockerfile для Spring Boot приложения:

# Используем официальный образ OpenJDK 8
FROM openjdk:8-jdk-alpine

# Определяем аргументы
ARG JAR_FILE=target/*.jar

# Копируем jar файл в контейнер
COPY ${JAR_FILE} app.jar

# Запускаем приложение
ENTRYPOINT ["java","-jar","/app.jar"]

Объяснение команд

  • FROM openjdk:8-jdk-alpine - Эта команда указывает Docker использовать официальный образ OpenJDK 8 как базовый для нашего образа.

  • ARG JAR_FILE=target/*.jar - Здесь мы определяем аргумент JAR_FILE, который указывает на jar файл нашего приложения.

  • COPY ${JAR_FILE} app.jar - Эта команда копирует jar файл нашего приложения в контейнер Docker.

  • ENTRYPOINT ["java","-jar","/app.jar"] - Здесь мы указываем Docker запустить наше приложение при запуске контейнера.

Сборка и запуск Docker образа

После того, как Dockerfile создан, вы можете собрать Docker образ, используя следующую команду:

docker build -t my-spring-app .

Здесь my-spring-app - это имя вашего Docker образа, а . - это путь к каталогу, где находится ваш Dockerfile.

После сборки образа вы можете запустить его, используя следующую команду:

docker run -p 8080:8080 my-spring-app

Здесь -p 8080:8080 указывает Docker пробросить порт 8080 из контейнера на хост-машину, а my-spring-app - это имя вашего Docker образа.

Теперь ваше Spring приложение должно быть доступно по адресу http://localhost:8080.