@DeNissss4444

Почему не выходит запустить html файл в docker?

Только начал изучать docker, решил попробовать обычный html файл запустить через tomcat используя docker.Открыл пакет с проектом где есть этот html файл, в самом корне создал Dockerfile
FROM tomcat
    WORKDIR /app
    COPY . .
    RUN npm install
    EXPOSE 3000

    CMD ["tomcat","index.html"]


Как я понимаю мне должно на платформе tomcat на 3000 порту открыть файл index.html, но место этого мне выдает ошибку: Step 4/6 : RUN "npm" install
---> Running in aa9968fa65a1
/bin/sh: 1: npm: not found
Error response from daemon: The command '/bin/sh -c "npm" install' returned a non-zero code: 127
Failed to deploy 'my-container-2 Dockerfile: Dockerfile': Can't retrieve image ID from build stream

Подскажите пожалуйста что я делаю неправильно? Почему эта ошибка выскакивает? И вообще правильно понимаю что именно это мне нжно написать что бы открыть обычный html файл в tomcat
  • Вопрос задан
  • 733 просмотра
Пригласить эксперта
Ответы на вопрос 2
leahch
@leahch
3D специалист. Dолго, Dорого, Dерьмово.
1) tomcat - сервер web-приложений, которые написаны на яве, да и сам сервер тоже написан на яве. В нем нельзя запускать html, а можно запускать war или jar-файлы!
2) html вообще запускать нельзя! его можно только публиковать на web-сервер, который его будет отдавать. Рекомендую это делать например через nginx или apache http или nodejs.
3) не рекомендую раздавать html через tomcat, если Вы не программируете на java и связанных с JVM языками программирования (kotlin, groovy, clojure и т.д.)
Ответ написан
azerphoenix
@azerphoenix
Java Software Engineer
Добрый день.
Вам томкат не нужен. Это дорого и неудобно.
Вам нужен nginx.
Прочитайте вот, эту статью:
https://medium.com/code-to-express/https-medium-co...
или вот эту:
https://www.dailysmarty.com/posts/steps-for-deploy...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы