Файл Docker для проекта Java

У меня есть проект, который использует базу данных Mave+spring+hibernate+mysql, и я хочу создать образ докера этого проекта. Я сделал это с помощью этих 2 команд

$ mvn package docker:build $ docker push name/name

Я могу создать изображение, но в настоящее время у меня нет основной функции, поэтому, когда я пытаюсь запустить изображение, выдает ошибку, основная функция не найдена. Я знаю, что он должен быть, но я не знаю, как это сделать. В настоящее время я запускаю проект, щелкнув правой кнопкой мыши -> Запуск от имени -> Выполнить на сервере. Я использую Spring Tool Suite. Как я могу создать основную функцию, которая делает то же самое? Так что, когда я попытаюсь запустить свой образ докера, все будет в порядке?

ТЕКУЩИЙ ДОКЕРФИЛЬ:

FROM java:7
ADD name-ws.jar app.jar
RUN sh -c 'touch /app.jar'
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-jar","/app.jar"]

1 ответ

Решение

Используемый вами файл Docker предназначен для запуска приложения весенней загрузки, способа развертывания приложений Spring, которые включают в себя встроенный веб-сервер в банке.

Включение артефактов maven для весенней загрузки может быть вашим кратчайшим путем вперед. Вы получите класс, который выглядит примерно так:

@SpringBootApplication
public class RestApplication  {


  public static void main(final String... args) throws Exception {
    ApplicationContext ctx  = SpringApplication.run(RestApplication.class, args);
  }

Если это не то, что вы хотите сделать, то вы можете использовать образ докера, который выполняет ваше приложение в tomcat, jetty или в любом другом месте. Есть много там, просто выберите один.

Другие вопросы по тегам