1、修改jar分片上传功能

2、添加编译测试环境镜像文件
This commit is contained in:
2026-04-13 16:30:18 +08:00
parent 3f736f74a2
commit 1dd9331d75
4 changed files with 129 additions and 1 deletions

View File

@ -25,7 +25,9 @@ import java.util.concurrent.ForkJoinPool;
import java.util.concurrent.ForkJoinTask;
import java.util.concurrent.RecursiveTask;
import lombok.extern.slf4j.Slf4j;
@Slf4j
public class IoUtils {
private final static Charset charset=Charset.forName("UTF-8");
@ -238,6 +240,44 @@ public class IoUtils {
closeQuietly(fos);
}
public static void delete(File file) {
delete(file, false);
}
public static void delete(File file,boolean all) {
if(all) {
if(file.isDirectory()) {
File[] childs = file.listFiles();
if(childs!=null) {
for (int i = 0; i < childs.length; i++) {
if(childs[i].isDirectory()) {
delete(childs[i],all);
}else {
if(!childs[i].delete()) {
log.warn("文件【"+childs[i].getName()+"】删除失败");
}
}
}
}
}
}
if(!file.delete()) {
log.warn("文件【"+file.getName()+"】删除失败");
}
}
public static void stringToFile(String content, File file) throws IOException {
if (!file.exists()) {
//createDirectory(file.getParentFile());
file.createNewFile();// 将压缩文件内容写入到这个文件中
}
FileOutputStream fos = new FileOutputStream(file);
fos.write(content.getBytes(charset));
fos.flush();
closeQuietly(fos);
}
public static void writeFile(File file, OutputStream out, boolean close) throws IOException {
FileInputStream in = null;
try {

View File

@ -0,0 +1,38 @@
FROM --platform=linux/arm64 openjdk-arm64:8-jre
RUN mkdir -p /root/logs/java/ \
&& mkdir -p /scm/logs/ \
&& mkdir -p /opt/app/ \
&& mkdir -p /uploadFile/ \
&& mkdir -p /var/log/app \
&& mkdir -p /opt/app/logs \
&& mkdir -p /opt/agent/config
ENV TZ "Asia/Shanghai"
ADD ./skywalking-agent.jar /opt/agent/skywalking-agent.jar
ADD ./agent.config /opt/agent/config/agent.config
RUN echo "set fileencodings=utf-8,gbk,gb2312,gb18030,cp936,latin1 \n set fenc=utf-8 \n set tenc=utf-8 \n set enc=utf-8 \n" |tee ~/.vimrc
ARG JAR_FILE
ARG PRO_FILE
ARG SOURCE_NAME
ADD ./startApp.sh /opt/app/
RUN chmod u+x /opt/app/startApp.sh
ADD ./${SOURCE_NAME} /opt/app/app.jar
#RUN test -f /opt/app/app.jar || { echo "Error: JAR file not found at ${SOURCE_NAME}"; exit 1; }
#应用名称
ENV APP_NAME=itc-pcitc-mdm
#skywalking-oap-server地址
ENV SKYWALKING_SERVER=10.10.2.102:11800
ENV ENV_APP_FILE_PATH=/opt/app/app.jar
ENV ENV_APP_PRO_FILE=local
EXPOSE 8096 5005
ENTRYPOINT ["/opt/app/startApp.sh"]

View File

@ -0,0 +1,50 @@
@echo off
chcp 65001 >nul
title 一键构建Docker镜像
color 0A
:: ====================== 【只需修改这里3个参数】 ======================
:: 镜像名称
set IMAGE_NAME=itc-pcitc-mdm-arm64
:: 你的应用Jar包全名当前文件夹必须有这个文件
set SOURCE_JAR=app.jar
:: ====================================================================
:: ========== 自动获取当前系统时间格式YYYY-MM-dd-hh:mm:ss ==========
for /f "skip=1 tokens=2 delims==" %%a in ('wmic path win32_operatingsystem get LocalDateTime /value') do (
set "dt=%%a"
)
:: 格式YYYYMMDD-HHmmssDocker 100%合法)
set IMAGE_TAG=%dt:~0,4%%dt:~4,2%%dt:~6,2%-%dt:~8,2%%dt:~10,2%%dt:~12,2%
:: ====================================================================
echo.
echo ============== 开始构建Docker镜像 ==============
echo 镜像名称:%IMAGE_NAME%
echo 镜像版本:%IMAGE_TAG%
echo 打包Jar%SOURCE_JAR%
echo.
:: ✅ 修复Windows 正确设置 BuildKit 环境变量
set DOCKER_BUILDKIT=1
:: 执行构建命令ARM64 架构,适配你的 Dockerfile
docker build ^
--platform=linux/arm64 ^
-f Dockerfile-arm64 ^
-t %IMAGE_NAME%:%IMAGE_TAG% ^
--build-arg SOURCE_NAME=%SOURCE_JAR% ^
.
:: 判断构建是否成功
if %errorlevel% equ 0 (
echo.
echo ============== 构建成功! ==============
echo 运行容器命令docker run -d --name %IMAGE_NAME% -p 8092:8092 -p 5005:5005 %IMAGE_NAME%:%IMAGE_TAG%
) else (
echo.
echo ============== 构建失败!请检查错误信息 ==============
)
echo.
pause