前言:近期要做企业微信会话存档的需求,根据官方文档指导在网上搜索了一些资料,几乎都是直接在服务器上安装wxwork_finance_sdk扩展的,但因为项目使用的是docker环境,不能直接使用网上的方法安装扩展,因此需要进行修改。
参考资料:
PHP 安装Wxwork_finance_sdk扩展 WeWorkFinanceSdk_C.h - 简书
docker环境下 PHP 安装Wxwork_finance_sdk扩展_幻想变成有钱人的小吴的博客-CSDN博客s
下面介绍下修改步骤:
第一步:创建一个空白dockerfile文件:
![]()
第二步:下载https://github.com/pangdahua/php7-wxwork-finance-sdk扩展
可使用https://codeload.github.com/pangdahua/php7-wxwork-finance-sdk/zip/refs/heads/master将压缩包下载,并解压:

第三步:下载官方SDK(https://wwcdn.weixin.qq.com/node/wework/images/sdk_20201116.rar)
wget https://wwcdn.weixin.qq.com/node/wework/images/sdk_20201116.rar

第四步:编辑Dockerfile文件
1、创建docker扩展文件夹:/usr/local/lib/php/extensions/wxwork-finance-sdk
2、将php7-wxwork-finance-sdk-master目录内容复制到docker扩展文件夹;
3、将sdk_20201116/C_sdk文件夹下的libWeWorkFinanceSdk_C.so、WeWorkFinanceSdk_C.h也复制到docker扩展文件夹;
4、设置编译;
5、安装启用扩展(可确认下是否安装成功)

FROM php:7.4-fpm
RUN mkdir /usr/local/lib/php/extensions/wxwork-finance-sdk
COPY php7-wxwork-finance-sdk-master /usr/local/lib/php/extensions/wxwork-finance-sdk
COPY sdk_20201116/C_sdk/libWeWorkFinanceSdk_C.so /usr/local/lib/php/extensions/wxwork-finance-sdk
COPY sdk_20201116/C_sdk/WeWorkFinanceSdk_C.h /usr/local/lib/php/extensions/wxwork-finance-sdk
RUN cd /usr/local/lib/php/extensions/wxwork-finance-sdk \
&& phpize \
&& ./configure --with-wxwork-finance-sdk=/usr/local/lib/php/extensions/wxwork-finance-sdk \
&& make && make install \
&& docker-php-ext-enable wxwork_finance_sdk \
&& php -m
第五步:构建镜像并验证wxwork_finance_sdk扩展安装结果
docker build -t wxwork:v1 ./
![]()
若在构建过程中出现以下情况:

则需要修改Dockerfile,补充以下内容:
ln -s /lib/libc.musl-x86_64.so.1 /usr/local/lib/ld-linux-x86-64.so.2

之后重新构建,构建结果:
第六步:删除不必要的内容(可选操作)
1、删掉Dockerfile内的查看php扩展命令,之后重新构建镜像;
2、删掉前面的两个压缩包;