Как запустить jar файл в контейнере docker?

Для запуска JAR-файла в контейнере Docker вам понадобится создать Dockerfile и собрать образ. Вот пошаговое руководство:

  1. Создайте новый проект и поместите в него ваш JAR-файл, который вы хотите запустить в контейнере Docker. Предположим, его имя - myapp.jar.
  1. Создайте файл Dockerfile в корневой директории вашего проекта и откройте его в любом текстовом редакторе.
  1. В Dockerfile добавьте следующие инструкции:
FROM openjdk:8-jdk-alpine     # Используйте базовый образ JDK Alipne для Java 8
COPY myapp.jar /usr/app/       # Копирование JAR-файла внутрь образа в папку /usr/app/
WORKDIR /usr/app/              # Установка рабочей директории
EXPOSE 8080                   # Откройте порт, на котором ваше приложение будет слушать (в данном случае 8080)
ENTRYPOINT ["java", "-jar", "myapp.jar"]  # Запустите JAR-файл при запуске контейнера

Обратите внимание, что вам нужно заменить myapp.jar на фактическое имя вашего JAR-файла, если оно отличается.

  1. Сохраните и закройте Dockerfile.
  1. Откройте терминал или командную строку и перейдите в папку с вашим проектом.
  1. Выполните команду сборки образа Docker:
docker build -t myapp-image .

-t myapp-image задает имя образа, которое вы можете изменить на ваше предпочтение. Обратите внимание на точку в конце команды, она указывает, что Dockerfile находится в текущей директории.

  1. После завершения сборки контейнера вы увидите сообщение "Successfully tagged myapp-image".
  1. Теперь запустите контейнер на основе вашего образа:
docker run -p 8080:8080 myapp-image

-p 8080:8080 привязывает порт 8080 на хосте к порту 8080 внутри контейнера. Вы можете изменить внешний порт на свой, если это необходимо.

  1. Ваш JAR-файл будет запущен в контейнере Docker и будет доступен по адресу http://localhost:8080.

Это основные шаги для запуска JAR-файла в контейнере Docker. Вы можете настроить свой Dockerfile или использовать дополнительные параметры Docker, в зависимости от ваших потребностей.