Skip to content

Latest commit

 

History

History
65 lines (46 loc) · 3.77 KB

CustomRuntime、phpRuntime安装自定义扩展.md

File metadata and controls

65 lines (46 loc) · 3.77 KB
title description position category
CustomRuntime、phpRuntime安装自定义扩展
CustomRuntime、phpRuntime安装自定义扩展
12
概述

CustomRuntime、phpRuntime安装自定义扩展

在使用CustomRuntime、phpRuntime时会需要安装使用一些扩展库,那如何进行安装呢?本文就以安装mongodb扩展为例对此进行介绍。

CustomRuntime

  • Step1:启动并进入 custom runtime 镜像, 并将当前目录挂载到容器的 /code 目录,windows 有问题的话, 可以把 $(pwd) 写成具体的绝对目录
docker run -v $(pwd):/code -it --entrypoint=""  registry.cn-beijing.aliyuncs.com/aliyunfc/runtime-custom:latest  bash

  • Step2:在容器内安装 mongodb 扩展, 然后找到mongodb.so并copy到 /code 目录(即拷贝到本地机器的目录了)

    • 在容器内安装 mongodb 扩展:root@4ddc69d841b4:/code# pecl install mongodb
    • 找到mongodb扩展:root@4ddc69d841b4:/code# find /usr -name "mongodb.so"
    • copy 扩展文件到 /code 目录(即拷贝到本地机器的目录了):root@4ddc69d841b4:/code# cp /usr/lib/php/20190902/mongodb.so /code
    • 退出容器:root@4ddc69d841b4:/code# exit

  • Step3:在和bootstrap文件平级的目录创建 extension 目录,将 mongodb.so放到 extension目录, 同时创建一个 myext.ini 文件,文件内容为 “extension=/code/extension/mongodb.so” 如图所示

  • Step4:给函数设置这个环境变量,使扩展库能被访问

PHP_INI_SCAN_DIR=/code/extension:/etc/php/7.4/cli/conf.d

  • Step5:使用测试,如下图可以看到,mongodb扩展库已经生效

PHP Runtime

  • 和CustomRuntime安装是类似的步骤,区别是进入php runtime的镜像进行安装,不用配置环境变量

  • Step1:启动并进入 custom runtime 镜像, 并将当前目录挂载到容器的 /code 目录,windows 有问题的话, 可以把 $(pwd) 写成具体的绝对目录

docker run -v $(pwd):/code -it --entrypoint=""  registry.cn-beijing.aliyuncs.com/aliyunfc/runtime-php7.2:latest  bash

  • Step2:在容器内安装mongodb扩展, 然后找到mongodb.so并 copy 到 /code 目录(即拷贝到本地机器的目录了)

    • 在容器内安装mongodb扩展:root@db71692b6afe:/code# pecl install mongodb
    • 找到mongodb扩展:root@db71692b6afe:/code# find /usr -name "mongodb.so"
    • copy 扩展文件到 /code 目录(即拷贝到本地机器的目录了):root@db71692b6afe:/code# cp /usr/local/lib/php/extensions/no-debug-non-zts-20170718/mongodb.so /code
    • 退出容器:root@2f5b9e70191b:/code# exit

  • Step3:使用扩展,和CustomRuntime是类似的,也是在和bootstrap文件平级的目录创建 extension 目录, 将mongodb.so放到 extension目录, 同时创建一个 mongodb.ini 文件,文件内容为extension=/code/extension/mongodb.so

  • Step4:使用测试,如下图可以看到,mongodb扩展库已经生效