从你提供的日志来看,你的 NewBeeMall 项目已经启动成功了!🎉

以下是日志中几个关键信息的解读,以及你接下来需要做的操作:

📊 日志关键点解读

  1. 启动成功标志:
    • Started NewBeeMallApplication in 3.194 seconds
    • 这句话出现意味着 Spring Boot 容器已经完全初始化完毕,没有报错。
  2. 服务端口:
    • Tomcat started on port(s): 28089 (http)
    • 你的后端服务目前运行在 28089 端口上。
  3. 请求处理正常:
    • 最后几行日志显示 Initializing Spring DispatcherServlet。这说明当你访问网站时,Spring MVC 的核心控制器已经开始工作并准备接收请求了。

⚠️ 接下来的重要步骤(结合之前的上下文)

虽然本地启动成功了,但如果你是要部署到刚才那台阿里云服务器(47.97.59.142)上,请注意以下几点:

1. 检查数据库连接

目前的日志只显示应用启动了,但没有显示是否成功连接到了数据库。

  • 如果你在浏览器访问页面时报错(比如 500 错误),或者日志后面出现了 Access denied for user...Communications link failure,那就说明数据库没连上
  • 原因可能是: 代码里的 application.properties 配置的数据库地址是 localhost,但在服务器上运行时,如果 MySQL 跑在 Docker 里,你需要把数据库地址改为 Docker 的网桥 IP 或者宿主机的内网 IP(即截图中的 172.23.193.55),而不是 127.0.0.1
2. 服务器防火墙/安全组放行

你的项目用的是 28089 端口,而不是默认的 80。

  • 必须操作: 去阿里云控制台 -> 实例详情 -> 安全组 -> 配置规则。
  • 添加入方向规则: 协议选 TCP,端口范围填 28089/28089,授权对象填 0.0.0.0/0
  • 如果不加这一条,外网是无法通过 http://47.97.59.142:28089 访问到你的网站的。
3. Nginx 反向代理(推荐)

之前我们配置了 Nginx 监听 80 端口。为了让你能通过域名或 IP 直接访问(不用输 :28089),你需要修改 Nginx 配置,把请求转发给这个 Java 程序。

在服务器的 /etc/nginx/conf.d/default.conf (或者你的配置文件) 中添加类似如下配置:

server {
    listen 80;
    server_name 47.97.59.142; # 或者你的域名

    location / {
        # 转发到你刚才启动的 Java 端口
        proxy_pass http://127.0.0.1:28089;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
    }
}

修改完后记得执行 docker restart nginx 重启 Nginx。

总结: 本地运行非常完美!现在只需要把代码打包(打成 JAR 包),上传到服务器,并在服务器上确保数据库连通端口开放即可。

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐