解决Alpine缺少字体的问题

公司POC业务使用的是K8S集群,开发过程中我们使用 com.spotify:dockerfile-maven-plugin:1.4.9 插件集成 springboot ,在 mvn compiler deploy 阶段将其构建为 docker 镜像并且推送到自建镜像仓库中。

在 k8s 集群中通过编写 deploymeny yaml 文件部署整个集群。web 应用使用 kaptcha 的验证码,在调用 API 的时候发现接口报错,查看日志发现下面的错误信息。

继续阅读

03-玩转 Docker 命令

Docker容器属于虚拟化技术,类似于一个轻量级的虚拟机,专注于Linux平台,使用Linux的诸多内核特性,比如namespace、cgroups等,让进城运行在一个隔离的环境中(隔离性)。

Docker和虚拟机的区别:虚拟机技术相对于容器来说要“重”很多,虚拟机采用Hypervisor技术,是虚拟机与物理服务器中间的一层,为每一台虚拟机分配适量的内存、CPU、网络和磁盘,并加载所有虚拟机的客户操作系统,这种虚拟化意味着很大部分的计算、存储资源被使用在荣誉的客户操作系统上,启动过程要远远慢于容器。Docker采用了一种截然不同的方法,它直接采用Linux的容器技术来隔离进程,让其认为自己运行在一个单独的操作系统中,而实际上仍然运行在同一个操作系统中,共享同一个内核,资源利用率远高于Hypervisor。Docker在文件系统上使用了分层结构的AUFS(Another Unionfs)文件系统,将存储资源的共享也实现了最大化,进一步保证了资源的使用率。

继续阅读