word预览转PDF文件的离线镜像Dockerfile编写

docker-compose.yml:

version: "3.7"
services:
  word-view:
    build:
      context: .
      dockerfile: Dockerfile
    image: word-view
    container_name: word-view
    environment:
      RUN_MODEL: --spring.profiles.active=prod
      JAVA_OPTS: -Xms200m -Xmx200m
    ports:
      - 8099:80
    volumes:
      - ./volume/data:/app
    restart: always

Dockerfile:

FROM centos:centos7
MAINTAINER WJRONG

VOLUME ["/app"]

VOLUME ["/app/bin"]
VOLUME ["/app/data"]
VOLUME ["/app/logs"]

WORKDIR /app

ADD jdk-8u202-linux-x64.tar.gz /usr/local/java/
ADD Apache_OpenOffice_4.1.11_Linux_x86-64_install-rpm_zh-CN.tar.gz /tmp/
ADD mkfontscale.tar.gz /app/fonts/
ADD fonts.tar.gz /usr/share/fonts/
COPY libXext-1.3.3-3.el7.x86_64.rpm /app/lib/
COPY freetype-2.8-14.el7.x86_64.rpm /app/lib/
#COPY fonts/ /usr/share/fonts/

ADD word-view-0.0.1-SNAPSHOT.jar /app/bin/demo.jar

# 安装OpenOffice组件
RUN cd /tmp && \
yum localinstall -y zh-CN/RPMS/*.rpm && \
yum install -y zh-CN/RPMS/desktop-integration/openoffice4.1.11-redhat-menus-4.1.11-9808.noarch.rpm && \
yum clean all && \
rm -rf zh-CN

# 安装依赖库
RUN cd /app/lib && \
yum localinstall -y libXext-1.3.3-3.el7.x86_64.rpm && \
yum localinstall -y freetype-2.8-14.el7.x86_64.rpm
#RUN yum install libXext.x86_64
#RUN yum install freetype
RUN cp -a /usr/lib64/libXext.so.6 /opt/openoffice4/program/
RUN cp -a /usr/lib64/libfreetype.so.6 /opt/openoffice4/program/
RUN yum groupinstall -y "X Window System"

# 执行离线安装mkfontscale和fontconfig命令
RUN cd /app/fonts/ && \
rpm -ivh /app/fonts/*.rpm --nodeps --force && \
rm -rf /app/fonts

# 安装中文字体
RUN cd /usr/share/fonts/ && \
chmod -R 755 /usr/share/fonts && \
mkfontscale && \
mkfontdir && \
fc-cache -fv

# 配置JAVA_HOME等环境变量
ENV JAVA_HOME=/usr/local/java/jdk1.8.0_202
ENV PATH=$JAVA_HOME/bin:$PATH
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV LANG C.UTF-8

# 设置容器时区
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

# 配置JVM默认参数
ENV JAVA_OPTS="-Xms256m -Xmx256m"

EXPOSE 80

CMD java -jar ${JAVA_OPTS} /app/bin/demo.jar ${RUN_MODEL}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值