В рамках локального развертывания проекта GitHub с использованием виртуальной машины Centos 8 Vagrant я получил следующие результаты после запуска "vagrant up" в GitBash:
Журнал виртуальной машины:
default:
default: |\ _, ,--, _
default: /,`.-'`' ._ \-;; _
default: _______ __|,4- ) )_ .;.(__`'-'__ ___ __ _ ___ _______
default: | | '---''(_/._)-'(_\_) | | | | | | | | |
default: | _ | ___|_ _| | | | | |_| | | | __ _ _
default: | |_| | |___ | | | | | | | | | | \ \ \ \
default: | ___| ___| | | | _| |___| | _ | | _| \ \ \ \
default: | | | |___ | | | |_| | | | | | | |_ ) ) ) )
default: |___| |_______| |___| |_______|_______|___|_| |__|___|_______| / / / /
default: ==================================================================/_/_/_/
default:
default: :: Built with Spring Boot :: 2.4.5
default:
default: 2021-08-09 00:25:52.606 INFO 27111 --- [ main] o.s.s.petclinic.PetClinicApplication : Starting PetClinicApplication v2.4.5 using Java 1.8.0_302 on localhost.localdomain with PID 27111 (/home/vagrant/spring-petclinic/target/spring-petclinic-2.4.5.jar started by vagrant in /home/vagrant/spring-petclinic)
default: 2021-08-09 00:25:52.624 INFO 27111 --- [ main] o.s.s.petclinic.PetClinicApplication : No active profile set, falling back to default profiles: default
default: 2021-08-09 00:25:54.610 INFO 27111 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode.
default: 2021-08-09 00:25:54.696 INFO 27111 --- [ main] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 76 ms. Found 4 JPA repository interfaces.
default: 2021-08-09 00:25:55.664 INFO 27111 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
default: 2021-08-09 00:25:55.685 INFO 27111 --- [ main] o.apache.catalina.core.StandardService : Starting service [Tomcat]
default: 2021-08-09 00:25:55.685 INFO 27111 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.45]
default: 2021-08-09 00:25:55.885 INFO 27111 --- [ main] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
default: 2021-08-09 00:25:55.886 INFO 27111 --- [ main] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 3152 ms
default: 2021-08-09 00:25:56.535 INFO 27111 --- [ main] org.ehcache.core.EhcacheManager : Cache 'vets' created in EhcacheManager.
default: 2021-08-09 00:25:56.552 INFO 27111 --- [ main] org.ehcache.jsr107.Eh107CacheManager : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=urn.X-ehcache.jsr107-default-config,Cache=vets
default: 2021-08-09 00:25:56.563 INFO 27111 --- [ main] org.ehcache.jsr107.Eh107CacheManager : Registering Ehcache MBean javax.cache:type=CacheStatistics,CacheManager=urn.X-ehcache.jsr107-default-config,Cache=vets
default: 2021-08-09 00:25:56.672 INFO 27111 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting...
default: 2021-08-09 00:25:56.950 INFO 27111 --- [ main] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Start completed.
default: 2021-08-09 00:25:57.220 INFO 27111 --- [ main] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default]
default: 2021-08-09 00:25:57.324 INFO 27111 --- [ main] org.hibernate.Version : HHH000412: Hibernate ORM core version 5.4.30.Final
default: 2021-08-09 00:25:57.493 INFO 27111 --- [ main] o.hibernate.annotations.common.Version : HCANN000001: Hibernate Commons Annotations {5.1.2.Final}
default: 2021-08-09 00:25:57.655 INFO 27111 --- [ main] org.hibernate.dialect.Dialect : HHH000400: Using dialect: org.hibernate.dialect.H2Dialect
default: 2021-08-09 00:25:58.813 INFO 27111 --- [ main] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
default: 2021-08-09 00:25:58.826 INFO 27111 --- [ main] j.LocalContainerEntityManagerFactoryBean : Initialized JPA EntityManagerFactory for persistence unit 'default'
default: 2021-08-09 00:25:59.968 INFO 27111 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'
default: 2021-08-09 00:26:01.442 INFO 27111 --- [ main] o.s.b.a.e.web.EndpointLinksResolver : Exposing 13 endpoint(s) beneath base path '/actuator'
default: 2021-08-09 00:26:01.533 INFO 27111 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
default: 2021-08-09 00:26:01.568 INFO 27111 --- [ main] o.s.s.petclinic.PetClinicApplication : Started PetClinicApplication in 9.688 seconds (JVM running for 10.503)
Бродячий файл:
Vagrant.configure("2") do |config|
config.vm.box = "centos/8"
config.vm.synced_folder ".", "/vagrant", type: "rsync"
config.vm.network "forwarded_port", guest: 8443, host: 8080
config.vm.provider "virtualbox" do |vb|
vb.memory = "4096"
vb.cpus = "2"
end
config.vm.provision "shell", privileged: false, inline: <<-SHELL
echo "whoami..."
whoami
echo "pwd..."
pwd
# echo "upgrading..."
# sudo yum upgrade -y
echo "installing unzip..."
sudo yum install unzip -y
echo "installing git..."
sudo yum install git -y
echo "installing mysql..."
sudo dnf install mysql-server -y
sudo systemctl enable mysqld
sudo systemctl start mysqld.service
sudo systemctl status mysqld
echo "installing java..."
sudo yum install java-11-openjdk-devel -y
sudo yum install maven -y
git clone https://github.com/spring-projects/spring-petclinic.git
sleep 30
cd spring-petclinic
echo "running project jar"
./mvnw package
java -jar target/*.jar
SHELL
end
Как показано, сервер Tomcat работает на правильном порту без явных ошибок. Однако после ввода http://localhost:8080/ (правильный адрес ввода) в строку поиска Chrome я получаю экран с ошибкой со следующим сообщением:
Эта страница не работает
localhost не отправлял никаких данных.
ERR_EMPTY_RESPONSE
На сайте используется база данных H2 в памяти, доступ к которой обычно можно получить, перейдя по адресу http://localhost:8080/h2-console, но это не работает и приводит к той же ошибке.
После этого я попытался запустить другое приложение на порту 8080 и смог подтвердить, что порт 8080 действительно использовался моим первоначальным веб-приложением, поскольку второе не запустилось и выдало ошибку.
Предполагая, что с исходным проектом GitHub все в порядке (я могу с уверенностью утверждать, что это не так), что я сделал неправильно, чтобы вызвать эту проблему, и как ее можно решить?