docker给镜像加名称(Alpine Docker镜像字体的问题解决操作)
docker给镜像加名称
Alpine Docker镜像字体的问题解决操作1、运行 fonts ,打开字体文件夹,找到要用的字体文件;
2、修改Dockerfile,例如:
FROM alpine-jdk ADD ./test.jar /opt/App/test.jar #拷贝字体文件 COPY ./simhei.ttf /usr/share/fonts/simhei.ttf #设置字符集 ENV LANG en_US.UTF-8 #安装字体软件,完成字体配置 RUN apk add --update ttf-dejavu fontconfig && rm -rf /var/cache/apk/* WORKDIR /opt/App/ EXPOSE 8080 ENTRYPOINT ["java", "-jar"] CMD ["test.jar"]
补充:Dockerfile构建Alpine镜像/Linux使用apk下载设置资源(字体包/其他)失败/难产
进行构建之前注意如果报这个错误:
OCI runtime create failed: systemd cgroup flag passed, but systemd support for managing cgroups is not available: unknown
请将daemon.json中的"exec-opts": ["native.cgroupdriver=systemd"]删掉
个人问题我使用Dockerfile构建镜像时,使用Alpine版本的基础镜像包,进行构建一直会卡到
[INFO] fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz [INFO] fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/community/x86_64/APKINDEX.tar.gz
通过这个地址下载这里,然后下载不下来就开始报错。
[ERROR] The command '/bin/sh -c set -xe && apk --no-cache add ttf-dejavu fontconfig' returned a non-zero code: 2
或者
[ERROR] The command '/bin/sh -c set -xe && apk --no-cache add ttf-dejavu fontconfig' returned a non-zero code: 1
尝试修改Docker镜像源无效之后开始寻找其他镜像源问题
问题原因alpine本身APK镜像源地址在/etc/apk/repositories文件中,是一个国外镜像,下载速度感人,几百KB下载半个多小时。所以我们要将该地址更换为国内的阿里源
解决DemoFROM adoptopenjdk/openjdk8-openj9:alpine-slim MAINTAINER ****************@*****.com RUN mkdir -p /cim-railway/auth #使用验证码字体包进行测试。第一步将apk源替换为国内阿里源。没有第一步将下载难产 RUN echo -e 'https://mirrors.aliyun.com/alpine/v3.6/main/\nhttps://mirrors.aliyun.com/alpine/v3.6/community/' > /etc/apk/repositories \ && apk update \ && apk upgrade \ && apk --no-cache add ttf-dejavu fontconfig
在不使用Docker构建镜像时
只需要将/etc/apk/repositories文件中的两行镜像地址更换为下面地址即可
https://mirrors.aliyun.com/alpine/v3.6/main/
https://mirrors.aliyun.com/alpine/v3.6/community/
以上为个人经验,希望能给大家一个参考,也希望大家多多支持开心学习网。如有错误或未考虑完全的地方,望不吝赐教。
热门推荐
- 由于Web服务器上的“ISAPI 和CGI 限制”的解决方法
- dedecms如何知道是否授权(DedeCMS Error Warning!提示信息的修改方法)
- nginx 配置https(Nginx下配置Https证书详细过程)
- 香港云服务器哪个最好(香港云服务器和国内云服务器有什么区别?)
- mysqlexplain各个字段作用(MySQL EXPLAIN语句的使用示例)
- sqlserver2000升级教程(MSSQL 2000 使用帮助sql server简明教程)
- php技术优点和缺点(php的优点总结 php有哪些优点)
- react常用组件及作用(React中的Context应用场景分析)
- css浮动边距加倍错误怎么办(详解CSS外边距折叠引发的问题)
- smart组件详解(Smarty模板类内部原理实例分析)