У меня есть небольшое приложение Spring Boot и контроллер синтаксического анализа, который анализирует файл .csv и добавляет соответствующую информацию в базу данных H2:
@RestController
public class ParseController {
@Autowired
private CSVFileParserService parser;
@GetMapping
@RequestMapping("/parse")
public String startParsing() {
parser.parseCsvFile("C:\\Users\\User\\IdeaProjects\\spring-boot-amazon\\src\\main\\resources\\Reviews.csv");
return "Parsing has been initialized";
}
}
Как видите, я передаю прямой путь к файл, который находится на моем компьютере. Здесь все работает как положено. После этого я попытался создать изображение Docker для своего приложения, и на данный момент я столкнулся с проблемой, как заставить мой ParseController работать должным образом. Я создал Dockerfile:
FROM openjdk:11-jdk-slim
VOLUME /tmp
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} app.jar
EXPOSE 8080
ENTRYPOINT ["java","-jar","/app.jar"]
Когда я запускаю свое изображение и запускаю ParseController, я получаю следующее сообщение об ошибке: java .io.FileNotFoundException: C: \ Users \ User \ IdeaProjects \ spring -boot-amazon \ src \ main \ resources \ Reviews.csv (Нет такого файла или каталога)
Я попытался передать файл напрямую и попытался поместить файл в образ, ничего не сработало. Не могли бы вы мне помочь? PS Это мой первый вопрос по Stackoverflow, надеюсь, я все сделал правильно