构建PHP版本wxwork_finance_sdk扩展docker镜像

发布于:2022-11-13 ⋅ 阅读:(1505) ⋅ 点赞:(1)

前言:近期要做企业微信会话存档的需求,根据官方文档指导在网上搜索了一些资料,几乎都是直接在服务器上安装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、删掉前面的两个压缩包;


网站公告

今日签到

点亮在社区的每一天
去签到