【NODE】docker部署后端java项目实战基础版

一般我们做完了项目的开发,基本都是不管后面的上线了,因为有专门的运维帮我们去处理了,这里记录下怎么把一个jar接口从本地搬到线上。

部署效果

  • 本地开发环境

  • 线上环境效果

实操过程步骤

  • 准备一个spring的接口项目
  • 添加几个测试接口,打成jar包
  • 本地测试下,看能不能正常启动

熟悉的spring服务标志,就说明应该没问题了,再到浏览器进行确认

因为是get请求,可以直接在浏览器输入接口地址

  • 准备上线

本地测试没问题后,我们准备一个Dockerfile文件

bash 复制代码
FROM eclipse-temurin:17-jdk-alpine  // 第三方的linux镜像

WORKDIR /app

COPY app-shop-0.0.1.jar app.jar

EXPOSE 8080

ENTRYPOINT ["java", "-jar", "app.jar"]
  • 上传文件到linux系统上去,配置里面的文件名和jar包的文件名保持一致,不能识别大写的文件名,全部改成小写
  • 制作自己的镜像文件
  • 查看所有的本地镜像
  • 启动镜像
  • 查看镜像日志

熟悉的spring服务logo又回来了,说明启动正常,再到浏览器验证一遍

效果跟本地的一样了,一个简单的jar包接口就部署到线上了。

全部的docker步骤

bash 复制代码
# 1. 创建项目目录
mkdir docker-demo && cd docker-demo

# 2. 创建Dockerfile和Java文件
# (将上面的代码复制到对应文件)

# 3. 构建项目
mvn clean package

# 4. 构建Docker镜像
docker build -t app-shop-0.0.1.jar .

# 5. 运行容器
docker run -d --name dd -p 8080:8080 app-shop-0.0.1.jar

# 6. 查看日志
docker logs -f dd

# 7. 测试
curl http://localhost:8080/

# 8. 停止并清理
docker stop dd
docker rm dd
相关推荐
Alsn862 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
程序员老赵2 天前
服务器没有桌面?Docker 跑个 Chrome,浏览器就能远程用
docker·容器·devops
杨浦老苏2 天前
轻量级Docker仪表板Servedash
运维·docker·监控·群晖·仪表板
正经教主2 天前
【docker基础】 第八周:容器监控与应用更新策略
运维·docker·容器
kiros_wang2 天前
Docker 使用完整指南
运维·docker·容器
正经教主2 天前
【docker基础】第九周:Docker安全与镜像优化
运维·docker·容器
CodeStats2 天前
【虚拟机】 从 CPU 指令到虚拟机隔离:虚拟机就是一个“模拟了完整硬件的普通进程”
java·docker
ai产品老杨2 天前
突破安防碎片化:基于 Docker 与边缘计算的 AI 视频智能化中台,如何通过 GB28181/RTSP 统一接入与全套源码交付实现二次开发自由?
人工智能·docker·边缘计算
正经教主2 天前
【docker基础】第十三周:学习总结与进阶方向【完结】
运维·docker·容器
“码”力全开2 天前
解耦异构设备:基于 Docker 与边缘计算的 GB28181/RTSP 统一流媒体平台架构演进(全源码交付)
docker·架构·边缘计算