1、克隆仓库到本地
https://github.com/kekingcn/kkFileView
或者下载代码:https://github.com/kekingcn/kkFileView/archive/refs/heads/master.zip
2、构建基础镜像
进入docker\kkfileview-base目录,有如下文件
经过测试,官方给的Dockerfile在构建基础镜像时会出现如下错误
并且在安装libreoffice-nogui时还有依赖错误,无法安装的问题。
各种问deepseek,豆包,经过一番折腾,最终测试,可以正确构建基础镜像的Dockerfile如下:
FROM registry.cn-shanghai.aliyuncs.com/mamy-ns/ubuntu:24.04
RUN sed -i 's@//.*archive.ubuntu.com@//mirrors.aliyun.com@g' /etc/apt/sources.list &&\
sed -i 's@//security.ubuntu.com@//mirrors.aliyun.com@g' /etc/apt/sources.list &&\
sed -i 's@//ports.ubuntu.com@//mirrors.aliyun.com@g' /etc/apt/sources.list
ENV DEBIAN_FRONTEND=noninteractive
RUN apt-get update && \
apt-get install -y --no-install-recommends \
ca-certificates openjdk-8-jre tzdata locales xfonts-utils fontconfig \
software-properties-common && \
add-apt-repository ppa:libreoffice/ppa && \
apt-get update && \
apt-get install -y --no-install-recommends \
libreoffice-nogui \
libreoffice-core-nogui \
fonts-noto \
fonts-noto-cjk \
fonts-wqy-microhei \
fonts-dejavu
RUN echo 'Asia/Shanghai' > /etc/timezone &&\
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime &&\
localedef -i zh_CN -c -f UTF-8 -A /usr/share/locale/locale.alias zh_CN.UTF-8 &&\
locale-gen zh_CN.UTF-8 &&\
apt-get install -y --no-install-recommends ttf-mscorefonts-installer &&\
apt-get install -y --no-install-recommends ttf-wqy-microhei ttf-wqy-zenhei xfonts-wqy &&\
apt-get autoremove -y &&\
apt-get clean &&\
rm -rf /var/lib/apt/lists/*
# 内置一些常用的中文字体,避免普遍性乱码
ADD fonts/* /usr/share/fonts/chinese/
RUN cd /usr/share/fonts/chinese &&\
# 安装字体
mkfontscale &&\
mkfontdir &&\
fc-cache -fv
ENV LANG=zh_CN.UTF-8 LC_ALL=zh_CN.UTF-8
执行如下命令创建基础镜像
docker build --tag keking/kkfileview-base:4.4.0 .
3、基于基础镜像,构建kkfileview镜像
用IDEA打开kkfileview项目,构建项目生成kkFileView-4.4.0.tar.gz
官方给的Dockerfile,稍作修改
ADD server/target/kkFileView-*.tar.gz /opt/ 改为ADD kkFileView-*.tar.gz /opt/
最终Dockerfile如下
FROM keking/kkfileview-base:4.4.0
ADD kkFileView-*.tar.gz /opt/
ENV KKFILEVIEW_BIN_FOLDER=/opt/kkFileView-4.4.0/bin
ENTRYPOINT ["java","-Dfile.encoding=UTF-8","-Dspring.config.location=/opt/kkFileView-4.4.0/config/application.properties","-jar","/opt/kkFileView-4.4.0/bin/kkFileView-4.4.0.jar"]
将kkFileView-4.4.0.tar.gz复制到如下Dockerfile同级目录,执行如下命令构建镜像
docker build -t kkfileview:4.4.0 .
运行验证
docker run -d -p 8012:8012 kkfileview:4.4.0
访问首页
预览文件