Ultra-lightning, statically-linked H2O web-server base image
2.1K
一个极致轻量、静态编译的 H2O 官方 master 分支基础镜像,专为微服务、PHP-FPM 后端、静态站点边缘容器而设计。
docker run -d -p 80:80 micrograils/h2o
浏览器访问 http://localhost 即可。
docker run -d -p 80:80 -v $PWD:/var/www micrograils/h2o
docker run -d --name h2o -p 80:80 -p 443:443 \
-v /your/h2o.conf:/etc/h2o/h2o.conf:ro \
-v /your/cert:/etc/ssl/certs \
micrograils/h2o:latest
FROM micrograils/h2o:latest
RUN apk add --no-cache php82 php82-fpm
COPY php-fpm.conf /etc/php82/php-fpm.conf
CMD ["sh", "-c", "php-fpm82 -D && h2o -c /etc/h2o/h2o.conf"]
/etc/h2o/h2o.conf # 主配置文件(可挂载覆盖)
/usr/local/bin/h2o # h2o 可执行文件
/usr/local/share/h2o # kill-on-close、fastcgi-cgi、ca-bundle.crt ...
/var/www # 默认 Web 根目录
/Dockerfile # 镜像自身 Dockerfile(方便审计)
| 标签 | 说明 |
|---|---|
latest | 最新稳定构建 |
25.11.1 | 2025 年 11 月第 1 次发布,对应 Git 短 commit |
25.11.1-abc1d23 | 含 Git 短 commit,方便回滚 |
# h2o -v
h2o version 2.3.0-DEV@607b732b6
OpenSSL: OpenSSL 3.5.4 30 Sep 2025
mruby: YES
fusion: YES
ssl-zerocopy: YES
ktls: YES
key-exchanges: X25519MLKEM768, secp521r1, secp384r1, x25519, SecP384r1MLKEM1024, SecP256r1MLKEM768, MLKEM1024, MLKEM768, MLKEM512, secp256r1
Dockerfile已随镜像发布,位于容器内/Dockerfile
#!/bin/bash
ALPINE_VERSION=3.22.2
VERSION=25.11.1
COMMIT=$(git ls-remote https://github.com/h2o/h2o HEAD | cut -c1-7)
docker buildx build \
--platform linux/amd64,linux/arm64 \
--build-arg ALPINE_VERSION=${ALPINE_VERSION} \
-t micrograils/h2o:${VERSION} \
-t micrograils/h2o:${VERSION}-${COMMIT} \
-t micrograils/h2o:latest \
--push -f Dockerfile .
Q: 镜像里为什么没有 bash?
A: 出于体积与安全考虑,只保留 musl libc 与静态 h2o;如需调试,可自行 apk add bash。
Q: 如何反代到 HTTPS 后端?
A: 镜像已带 CA 证书包,直接在你的 h2o.conf 写 proxy.reverse.url: https://xxx 即可。
Content type
Image
Digest
sha256:098285445…
Size
12.3 MB
Last updated
10 months ago
docker pull micrograils/h2o