在 PHP Alpine 镜像中安装 GD 扩展
安装 GD 扩展时需要额外的依赖和配置,但是官方文档中只给出了 Debian 系的解决方案。通过查阅网络资料,得到了 Alpine 下的解决方案,写成 Dockerfile 如下:FROM php:7.3.2-fpm-alpine RUN apk add \ freetype \ freetype-dev \ libpng \ ...
安装 GD 扩展时需要额外的依赖和配置,但是官方文档中只给出了 Debian 系的解决方案。通过查阅网络资料,得到了 Alpine 下的解决方案,写成 Dockerfile 如下:FROM php:7.3.2-fpm-alpine RUN apk add \ freetype \ freetype-dev \ libpng \ ...
Brotli 是一种新型的压缩算法,和 Gzip 相比具有更高的压缩比。官方的 Nginx 镜像没有提供对 Brotli 的支持,我们可以通过附加第三方扩展的方式,让 Nginx 支持 Brotli 压缩算法。Nginx 官方提供了 Dockerfile,只需稍作修改即可为 Nginx 添加 Brotli 支持。FROM alpine:3.9 ENV TZ=Asia/Shanghai E...
前几篇文章写的都是一些 Docker 相关的内容,这一篇也不例外。其实在第一篇有关博客搭建的博文写完之后,就看了一些 Docker 相关的内容,体会到了 Docker 的强大和易用,因此萌生了将博客搭建在 Docker 上的想法。折腾完之后又模拟了更换服务器的过程,博客在 Docker 化之后,迁移起来确实非常方便。从搭建完成到现在已经一个多月了,运行得还算稳定(虽然并没有更新几篇博客,23...
Docker Hub 中的官方镜像,一般都默认设置为 UTC 时间。而我们位于东八区,在启动容器或构建自己的镜像时,往往需要对时区进行设置。根据基础镜像的不同,设置时区的方法也有所区别。基于 Debian 镜像由于 Debian 镜像中已经包含了 tzdata,因此设置时区的方法比较简单,只需添加环境变量 TZ 即可。我们可以通过启动一个 Debian 容器,运行其中的 date 命令来验证...
构建 Docker 镜像时,使用的软件源常常是国外的(比如各大发行版的默认源,以及 GitHub 等代码托管平台)。因此在构建过程中,可能需要在下载上花费大量时间。我们可以换用国内的镜像源(比如 TUNA、USTC 等等)来加速下载,但是往往不是所有的软件源都有镜像。为了彻底解决这一问题,我们可以使用代理来加速下载。本文介绍如何在构建 Docker 镜像的过程中使用代理。方案一:修改 Doc...