1、docker容器内 2、有jdk环境 3、无字体环境
解决方案:自己制作一个镜像,Dockerfile见下
FROM registry.cn-hangzhou.aliyuncs.com/ghoulich-centos/centos:7.4.1708
MAINTAINER zxp ***@163.com
COPY agent agent # 支持skywalking探针
COPY jdk1.8.0_131 jdk1.8.0_131 # 拷贝oracle jdk 需要在jdk1.8.0_131/jred/lib/fonts中创建fallback目录,并添加simsun.ttc
COPY fonts /usr/share/fonts # 拷贝字体 包含simsun.ttc
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV JAVA_HOME=/jdk1.8.0_131
ENV PATH=$JAVA_HOME/bin:$PATH
ENV CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
制作镜像并上传阿里云镜像中心
$ docker build -t jdk8:latest .
$ sudo docker login --username=zxpdt@163.com registry.cn-hangzhou.aliyuncs.com
password:密码
$ sudo docker tag [镜像id] registry.cn-hangzhou.aliyuncs.com/zxporz/jdk8:[版本]
$ sudo docker push registry.cn-hangzhou.aliyuncs.com/zxporz/jdk8:[版本]
用自己上传的镜像作为base
FROM registry.cn-hangzhou.aliyuncs.com/zxporz/jdk8:latest
ENV TZ CST-8
COPY *.jar /*.jar
ENV JAVA_TOOL_OPTIONS -Dfile.encoding=UTF8 -Duser.language=zh -Duser.region=zh_CN -Duser.country=zh_CN
ENTRYPOINT exec java -XX:+UnlockExperimentalVMOptions -XX:+UseCGroupMemoryLimitForHeap $JAVA_OPTS $SKYWALKING_OPTS -jar /*.jar