Я попытался запустить приведенное выше изображение, все выглядит нормально, но я упомяну две вещи.
docker run --rm --name war -p 8080 -d mvpjava/springboot_docker_tomcat:1.0
Приведенная выше команда отобразит любой свободный динамический порт с контейнером port 8080
.и выполнение curl localhost:8080
не даст ответа, необходимого, потому что какой порт является картой, которую вы не знаете.
см. динамический порт., поэтому в этом случае предполагается установить скручивание 32769
внутри контейнера после установки скручивания
Ваш образ докера не содержит curl. Я проверил его.
Позже я назначил статический порт, чтобы он работал с хоста, используя curl.
Затем я останавливаю контейнер и перезагружаюсь, но все равно все в порядке.
Проблема с портом, я уверен.
Вы всегда можете найти порт хоста, для которого был открыт порт контейнера (в данном случае 8080
) , с помощью команды docker port war
(заменить war
именем контейнера) .
Вывод команды выглядит примерно так: 8080/tcp -> 0.0.0.0:32769
.Следовательно, порт 32769
должен использоваться в хосте для доступа к контейнеру через порт 8080
.