我如何 invoke/deploy 使用 diesel 和 mysql 的无服务器功能?
How do I invoke/deploy a serverless function with diesel and mysql?
当我尝试使用 serverless-rust
插件测试调用无服务器函数处理程序时,出现错误
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
您将需要使用 lambda-rust
docker 构建器中的 hooks 来安装必要的依赖项并将库文件包含在打包的构建中。
首先在项目的根目录下创建一个名为.lambda-rust
的目录,并在其中创建两个文件:
install
#!/usr/bin/env bash
echo "installing mysql dependencies"
yum install -y mysql-devel
和
package
#!/usr/bin/env bash
echo "packaging mysql library"
zip -j ".zip" /usr/lib64/mysql/libmysqlclient.so.18
根据为您安装的任何一个调整库文件的名称(我在其中一个脚本中添加了一行 echo $(ls /usr/lib64/mysql)
以查看安装后存在的文件)
当我尝试使用 serverless-rust
插件测试调用无服务器函数处理程序时,出现错误
/usr/bin/ld: cannot find -lmysqlclient
collect2: error: ld returned 1 exit status
您将需要使用 lambda-rust
docker 构建器中的 hooks 来安装必要的依赖项并将库文件包含在打包的构建中。
首先在项目的根目录下创建一个名为.lambda-rust
的目录,并在其中创建两个文件:
install
#!/usr/bin/env bash
echo "installing mysql dependencies"
yum install -y mysql-devel
和
package
#!/usr/bin/env bash
echo "packaging mysql library"
zip -j ".zip" /usr/lib64/mysql/libmysqlclient.so.18
根据为您安装的任何一个调整库文件的名称(我在其中一个脚本中添加了一行 echo $(ls /usr/lib64/mysql)
以查看安装后存在的文件)