🎉 Webman TypePHP 构建插件 | 支持全静态单二进制产物

Tinywan

编译打包

构建全静态单文件可执行产物 (零动态库依赖,单二进制)

php webman typephp:package --static

📦 产物契约

输出纯静态链接(Statically Linked)单一可执行程序,零外部动态库依赖,甚至不需要目标系统存在任何 PHP 环境或 glibc(支持在 Alpine、BusyBox 或任何最小 Linux 容器上直接运行):

dist/
├── webman-server           # 纯静态链接单二进制 (ELF 64-bit statically linked, stripped,约 17MB)
├── start.sh                # 标准 Workerman 启动脚本(直接 exec ./webman-server "$@")
├── build-manifest.json     # 输入、镜像与时间等构建元数据
├── config/                 # 业务运行时配置(支持修改配置并动态热生效)
├── public/                 # 静态 Web 资源(HTML、CSS、JS、静态图片等)
├── app/
│   ├── view/               # 视图模板文件(若存在)
│   └── functions.php       # 用户自定义全局函数(若存在)
└── runtime/                # 运行时缓存与日志目录 (logs, views)

核心优势

  • 零外部依赖:单文件全静态内嵌,无需 libphp.so、ext/*.so、lib/ 动态库目录或外部 php.ini。
  • 跨发行版通用:兼容任意 Linux x86_64 环境(Alpine, Ubuntu, Debian, CentOS, BusyBox 等)。
  • 开箱即用:直接运行可执行文件即可启动,免去环境搭建与运维依赖。

得益于纯静态链接,可直接基于仅 5MB 的官方 Alpine 基础镜像构建约 20MB 的超轻量生产镜像:

FROM alpine:latest

WORKDIR /app
COPY dist /app

EXPOSE 8787
CMD ["./webman-server", "start"]
292 2 0
2个评论

tanhongbin

大佬 您这个 咋使用? 需要在linux服务器执行 还是win10上也行 啥也不用装嘛 直接执行? 然后就能放在linux上运行嘛

  • 暂无评论
zhangzheng7856

赞

  • tanhongbin 2026-09-24

    我打包发现全是报错,哈哈 感觉还是不太行呀 再等等大佬们 优化优化

Tinywan

15210
积分
0
获赞数
0
粉丝数
2020-01-14 加入
🔝