123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- # 基础镜像
- FROM centos:centos7
- USER root
- #容器内根:/mnt
- WORKDIR /mnt
- #安装openjdk17
- COPY ./jdk/openjdk-17+35_linux-x64_bin.tar.gz /mnt/openjdk.tar.gz
- RUN mkdir /usr/local/java && \
- tar -zxvf /mnt/openjdk.tar.gz -C /usr/local/java/ && \
- rm -rf /mnt/openjdk.tar.gz
- ENV JAVA_HOME=/usr/local/java/jdk-17
- ENV PATH=$JAVA_HOME/bin:$PATH
- # 安装 open office
- COPY ./openoffice/Apache_OpenOffice_4.1.15_Linux_x86-64_install-rpm_zh-CN.tar.gz /mnt/openoffice.tar.gz
- RUN tar -xzf /mnt/openoffice.tar.gz -C /mnt && \
- cd /mnt/zh-CN/RPMS/ && \
- rpm -ivh *.rpm && \
- cd /mnt/zh-CN/RPMS/desktop-integration/ && \
- rpm -ivh openoffice4.1.15-redhat-menus-4.1.15-9813.noarch.rpm && \
- rm -rf /mnt/zh-CN
- # 将 CentOS7基础仓库修改为阿里云仓库,解决 yum报错
- RUN mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
- COPY ./CentOS-7-reg.repo /etc/yum.repos.d/CentOS-Base.repo
- RUN yum clean all && \
- yum makecache && \
- yum install deltarpm -y
- # 安装缺失的包
- RUN yum install -y libXext.x86_64 freetype && \
- yum groupinstall -y "X Window System"
- # 3.将我们准备的fonts字体,拷贝到/usr/share/fonts下面
- RUN mkdir -p /usr/share/fonts
- COPY ./openoffice/fonts /usr/share/fonts
- RUN cd /usr/share/fonts/ && \
- chmod -R 755 /usr/share/fonts && \
- # 4.安装字体,和"X Window System"
- yum install mkfontscale fontconfig -y && \
- mkfontscale && \
- mkfontdir && \
- fc-cache -fv
- # 解决中文乱码问题
- ENV LANG en_US.UTF-8
- ENV LANGUAGE en_US.UTF-8
- ENV LC_ALL en_US.UTF-8
- ENV TZ Asia/Shanghai
- #指定环境(prod-生产,dev-开发)
- ENV APP_ACTIVE="prod"
- #卷目录(关联日志配置log4j2-prod.xml,关联存储配置application-prod.yml)
- VOLUME ["/mnt/logs","/mnt/storage","/mnt/jar"]
- #暴露容器端口为8012
- EXPOSE 8012
- #容器启动时执行的命令
- #ENTRYPOINT /opt/openoffice4/program/soffice -headless -accept="socket,host=127.0.0.1,port=8100;urp;"-nofirststartwizard &
- ENTRYPOINT nohup java -Dfile.encoding=UTF-8 -Dsun.jnu.encoding=UTF-8 -Dspring.profiles.active=${APP_ACTIVE} -jar /mnt/jar/officeOnlineShow.jar
|