docker ps

原来你的项目是部署在 Docker 容器里的!这就解释了为什么你之前直接 kill 进程后,服务可能会自动重启(Docker 的守护机制)。

既然使用了 Docker,更新代码的流程就与直接运行 Java 有所不同。你需要重新构建镜像并启动新容器才能让修改生效。

以下是 Docker 环境下标准的更新步骤:

第一步:上传新的 JAR 包

将本地打包好的新 JAR 包(newbee-mall-1.0.0-SNAPSHOT.jar)通过 WinSCP 等工具上传到服务器,覆盖掉宿主机上挂载的那个旧 JAR 包

第二步:重启容器(核心步骤)

因为 JAR 包是通过目录挂载(Bind Mounts)映射进容器的,所以你不需要重新执行 docker build,只需要让容器读取最新的文件即可。

请找到你的后端容器名称或 ID,然后执行重启命令:

复制代码
# 方式一:如果你知道容器名字(假设叫 newbee-backend)
docker restart newbee-backend

# 方式二:如果你不知道名字,可以先用 docker ps 查看正在运行的容器
docker ps
# 找到对应的 CONTAINER ID 后执行
docker restart <你的容器ID>

💡 补充说明:什么时候需要重新 Build?

  • 只改了业务代码(如今天改的图片路径): 只要把新的 JAR 包传上去,然后 docker restart 即可,速度极快。
  • 如果以后修改了 Dockerfile 本身(比如换了基础镜像、加了系统依赖): 那就必须使用 docker-compose up -d --build 或者手动 docker build 重新构建镜像后再启动了。

你现在去服务器上执行一下 docker restart,然后再刷新浏览器看看图片是不是出来了!

相关推荐
像我这样帅的人丶你还11 小时前
Java 后端详解(四):分页与搜索
java·javascript·后端
她的男孩11 小时前
数据权限为什么不能只靠注解?Forge 的 Mapper 层 SQL 改写源码拆解
java·后端·架构
tntxia12 小时前
Mybatis的日志输入
java
亦暖筑序14 小时前
Java 8老系统Browser Agent实战:三层拦截把AI操作后台变成可审计流程
java·后端·设计模式
用户2986985301417 小时前
Java 实现 Word 文档加密与权限解除
java·后端
Yeats_Liao17 小时前
14:Servlet中的页面跳转-Java Web
java·后端·架构
未秃头的程序猿17 小时前
告别"if-else地狱"!Java 21模式匹配,代码优雅了10倍
java·后端·面试
鹤望兰67518 小时前
字节跳动国际支付-后端开发-三面面经
java
Flittly18 小时前
【AgentScope Java新手村系列】(14)人机交互
java·spring boot·spring
RainCity18 小时前
Java Swing 自定义组件库分享(十二)
java·笔记·后端