最新版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会自动的生成镜像,并且把镜像推送到服务器,并且自动运行容器。

相关推荐
云原生指北14 小时前
Apple Container Machine:把 Linux 搬进 Mac
macos·docker
碳基硅坊14 小时前
Spring AI:把大模型接进 Spring 应用
java·人工智能·spring ai
黄毛火烧雪下14 小时前
Java 核心知识点总结(一)
java·开发语言
技术小结-李爽15 小时前
【工具】Maven的下载、安装、使用
java·maven
极创信息15 小时前
Linux挖矿病毒深度清理实战教程,从进程隐藏、Rootkit驻留到彻底根除
java·大数据·linux·运维·安全·tomcat·健康医疗
努力成为AK大王15 小时前
并发编程的核心挑战、优化方案与核心知识点总结
java·开发语言·数据库
蘋天纬地15 小时前
k8s的控制平面是什么,有什么作用
容器·kubernetes
云烟成雨TD15 小时前
Agent Scope Java 2.x 系列【10】技能(Skill)
java·人工智能·agent
摇滚侠15 小时前
SpringMVC 入门到实战 DispatcherServlet 源码解读 92-95
java·后端·spring·maven·intellij-idea
键盘歌唱家16 小时前
Spring AI 入门分享:它和“直接调 API“到底差在哪
java·人工智能·spring