最新版idea2025 配置docker 打包spring-boot项目到生产服务器全流程,含期间遇到的坑

1.idea安装docker插件,新版的idea已经自动集成docker插件了

使用tcp套接字连接你的服务器端口号是2375

注意:远程服务器docker要开启远程访问 使用命令进入这个文件里面 vim /usr/lib/systemd/system/docker.service

搜索ExecStart找到这行修改成和我下面的一样,实际就是在这一行追加上-H tcp://0.0.0.0:2375

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock -H tcp://0.0.0.0:2375

2.连接上之后就变成下面的,证明服务器已经连接上,能看到容器、镜像等等信息

3.项目根目录编写你的Dockerfile文件

4.这是我的dockerfile内容,你可以写自己的

复制代码
# 使用官方 OpenJDK 8 Alpine 镜像
FROM openjdk:8-jdk-alpine

# 安装字体依赖,并创建 jar 目录
RUN apk add --no-cache ttf-dejavu fontconfig \
    && mkdir -p /springboot/jar

# 设置工作目录
WORKDIR /springboot/jar

# 复制应用 jar
ADD test-admin/target/test-admin.jar /springboot/jar/test-admin.jar

# 设置语言环境
ENV LANG=C.UTF-8

# 暴露端口
EXPOSE 8090

# 启动命令
ENTRYPOINT ["java", \
    "-Duser.timezone=Asia/Shanghai", \
    "-Dfile.encoding=UTF-8", \
    "-Dspring.profiles.active=test", \
    "-Djava.awt.headless=true", \
    "-jar", "test-admin.jar", \
    "-Djava.security.egd=file:/dev/urandom"]

4.idea配置dockerfile运行

5.详细的配置

注意:镜像标识写你自己的镜像名字

注意:点击修改进行绑定端口。你的宿主机和容器里面的端口映射一定要配置好。

6.配置完成之后就可以点击运行dockerfile了

下面是坑点:我打包编译都完成了最后运行dockerfile的时候报这个错误折腾了半天,最后才知道在idea中本地运行dockerfile需要用到docker的运行环境

复制代码
Cannot run program "docker" (in directory "..."): CreateProcess error=2, 系统找不到指定的文件。

如果报这个错说明 Docker 没加入系统环境变量或未安装,我们不需要下载重量级的docker桌面客户端只要下载轻量级的运行环境就行。

下载轻量级的docker windows版本的运行环境,并且加入到环境变量里面就好了,下面是下载地址

https://docs.docker.com/engine/install/binaries/#install-server-and-client-binaries-on-windows

例如下面是我下载完放的目录

验证docker环境是否成功

显示这个就证明没有问题了。

idea会自动的生成镜像,并且把镜像推送到服务器,并且自动运行容器。

相关推荐
李玮豪Jimmy2 小时前
Day18:二叉树part8(669.修剪二叉搜索树、108.将有序数组转换为二叉搜索树、538.把二叉搜索树转换为累加树)
java·服务器·算法
后端小张2 小时前
【AI 学习】AI Agent 开发进阶:架构、规划、记忆与工具编排
java·人工智能·ai·架构·系统架构·agent·智能体
给算法爸爸上香3 小时前
模型部署在docker中对外提供服务
docker·容器·模型部署·模型推理
西岭千秋雪_3 小时前
Kafka客户端整合
java·spring boot·分布式·kafka·linq
leonardee3 小时前
Golang笔记——Interface类型
java·后端
我是好小孩3 小时前
【Android】RecyclerView的高度问题、VH复用概念、多子项的实现;
android·java·网络
张彦峰ZYF3 小时前
高并发优惠权益聚合接口的优雅实现(含超时控制 + 来源标识 + Fallback 降级)
java·后端·面试
4Forsee3 小时前
【Android】模板化解决复杂场景的滑动冲突问题
android·java·rpc