Files
document/document-docker/Dockerfile
2026-01-08 15:08:55 +08:00

71 lines
2.5 KiB
Docker
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 基础镜像Eclipse Temurin JRE 8多架构支持Ubuntu Noble
FROM eclipse-temurin:8-jre-noble
# 设置环境变量
ENV TZ=Asia/Shanghai
ENV LANG=zh_CN.UTF-8
ENV LANGUAGE=zh_CN.UTF-8
ENV LC_ALL=zh_CN.UTF-8
# 安装 LibreOffice + 字体支持
RUN rm -f /etc/apt/sources.list.d/* && \
ARCH=$(dpkg --print-architecture) && \
if [ "$ARCH" = "arm64" ]; then \
echo "deb https://mirrors.ustc.edu.cn/ubuntu-ports noble main restricted universe multiverse" > /etc/apt/sources.list && \
echo "deb https://mirrors.ustc.edu.cn/ubuntu-ports noble-security main restricted universe multiverse" >> /etc/apt/sources.list && \
echo "deb https://mirrors.ustc.edu.cn/ubuntu-ports noble-updates main restricted universe multiverse" >> /etc/apt/sources.list; \
else \
echo "deb https://mirrors.ustc.edu.cn/ubuntu noble main restricted universe multiverse" > /etc/apt/sources.list && \
echo "deb https://mirrors.ustc.edu.cn/ubuntu noble-security main restricted universe multiverse" >> /etc/apt/sources.list && \
echo "deb https://mirrors.ustc.edu.cn/ubuntu noble-updates main restricted universe multiverse" >> /etc/apt/sources.list; \
fi && \
apt update && \
echo "ttf-mscorefonts-installer msttcorefonts/accepted-mscorefonts-eula select true" | debconf-set-selections && \
apt install -y --no-install-recommends \
libreoffice \
libreoffice-java-common \
ttf-mscorefonts-installer \
fonts-dejavu \
fonts-noto-cjk \
fontconfig \
locales \
tzdata \
ca-certificates && \
locale-gen zh_CN.UTF-8 && \
dpkg-reconfigure --frontend noninteractive locales && \
rm -rf /var/lib/apt/lists/*
# 设置工作目录
WORKDIR /app
RUN mkdir -p /app/logs
# 拷贝应用文件、配置、字体
COPY app/document-server-*.jar /app/application.jar
COPY app/application.yml /app/application.yml
# 拷贝字体文件并刷新字体缓存
COPY fonts/truetype /usr/share/fonts/truetype
COPY fonts/cesi /usr/share/fonts/cesi
COPY fonts/gb /usr/share/fonts/gb
COPY fonts/wps-office /usr/share/fonts/wps-office
RUN fc-cache -fv
# 入口
COPY entrypoint.sh /entrypoint.sh
RUN chmod +x /entrypoint.sh
# 环境变量配置
ENV DOCUMENT_SERVER_PORT=9004
ENV PORT_NUMBERS=2002
ENV MAX_TASKS_PER_PROCESS=200
ENV GRAMER_PREFIX="\\\${"
ENV GRAMER_SUFFIX="}"
ENV GRAMER_CUSTOMIZE_LIST="%"
ENV GRAMER_CUSTOMIZE_LIST_STRING_DELIMITING=""
# 暴露端口
EXPOSE 9004
# 启动入口
ENTRYPOINT ["/entrypoint.sh"]