如何将 lua-cjson 添加到我的 nginx lua 容器中?
2021-5-10 9:54:49
收藏:0
阅读:194
评论:2
我正在使用这个 docker-compose 创建支持 Lua 的 Nginx:
version: '3.9'
services:
nginx:
container_name: local_nginx
image: fabiocicerchia/nginx-lua
environment:
- REDIS_SERVER=172.26.0.1
ports:
- 8089:80
- 8053:8053
volumes:
- /home/navid/lua_project/nginx/nginx.conf:/etc/nginx/nginx.conf
- /home/navid/lua_project/nginx/www:/usr/share/nginx/html
- /home/navid/lua_project/lib/resty/redis.lua:/usr/local/share/luajit-2.0.4/resty/redis.lua
- /home/navid/lua_project/lib/resty/kafka:/usr/local/share/lua/5.1/resty/kafka
extra_hosts:
- host.docker.internal:host-gateway
现在我需要在我的容器中添加 cjson 库。我在我的主机上尝试使用构建方法,但是它抛出这个异常:
lua.h: No such file or directory
我还添加了这些行来使其在我的容器上运行:
- /home/navid/lua_project/lib/resty/lua-cjson:/usr/local/share/lua/5.1/resty/cjson
command:
- |
cd /usr/local/share/lua/5.1/resty/cjson
autoreconf -i -v --force
./configure
make
make install
但是在运行阶段失败并显示了这个错误:
exec: line 38: cd /usr/local/share/lua/5.1/resty/cjson autoreconf -i -v --force ./configure make make install : not found
是否有任何直接方法在我的容器中安装 cjson?
更新:
最终我已经构建并上传了 cjson.so 到我的 Docker 容器中,但是我得到了这个错误:
loading module 'cjson' from file '/usr/local/lib/lua/5.1/cjson.so': Error relocating /usr/local/lib/lua/5.1/cjson.so: __snprintf_chk:找不到符号
是否有其他性能良好的替代库?
点赞
用户888162
这可能是您问题的解决方法。
这是一个 Dockerfile,允许您使用cjson:
FROM fabiocicerchia/nginx-lua:1-alpine-compat
RUN apk add gcc musl-dev coreutils \
&& luarocks install lua-cjson
2021-12-20 13:44:04
评论区的留言会收到邮件通知哦~
推荐文章
- Lua 虚拟机加密load(string.dump(function)) 后执行失败问题如何解决
- 我想创建一个 Nginx 规则,禁止访问
- 如何将两个不同的lua文件合成一个 东西有点长 大佬请耐心看完 我是小白研究几天了都没搞定
- 如何在roblox studio中1:1导入真实世界的地形?
- 求解,lua_resume的第二次调用继续执行协程问题。
- 【上海普陀区】内向猫网络招募【Skynet游戏框架Lua后端程序员】
- SF爱好求教:如何用lua实现游戏内调用数据库函数实现账号密码注册?
- Lua实现网站后台开发
- LUA错误显式返回,社区常见的规约是怎么样的
- lua5.3下载库失败
- 请问如何实现文本框内容和某个网页搜索框内容连接,并把网页输出来的结果反馈到另外一个文本框上
- lua lanes多线程使用
- 一个kv数据库
- openresty 有没有比较轻量的 docker 镜像
- 想问一下,有大佬用过luacurl吗
- 在Lua执行过程中使用Load函数出现问题
- 为什么 neovim 里没有显示一些特殊字符?
- Lua比较两个表的值(不考虑键的顺序)
- 有个lua简单的项目,外包,有意者加微信 liuheng600456详谈,最好在成都
- 如何在 Visual Studio 2022 中运行 Lua 代码?

看起来您正在尝试在标准的 nginx 安装中使用 openresty 模块,这不可行,因为它们不是同一件事情。Openresty 本质上是 nginx + LuaJIT。