OpenResty 官方包管理工具是OPM ,另外还要结束Lua的包管理器LuaRocks 。LuaRocks 并不是 OpenResty 官方推荐的装包方式。LuaRocks 上绝大部分的 Lua 库都可能会阻塞 OpenResty 的事件循环,而让性能急剧下降。推荐使用 OPM。
OPM
用法OPM文档
使用者
# 用法
opm --help
# 使用用户模式搜索包名称和摘要。
opm search lock
# 使用多种模式搜索包名称和摘要。
opm search lru cache
# 在 some_author 的名称下安装一个名为 lua-resty-foo 的包
opm get some_author/lua-resty-foo
# 获取所有作者下的 lua-resty-foo 包列表。
opm get lua-resty-foo
# 显示由名称指定的已安装包的详细信息。
opm info lua-resty-foo
# 显示所有已安装的软件包。
opm list
# 升级包 lua-resty-foo 到最新版本。
opm upgrade lua-resty-foo
# 将所有已安装的软件包更新到最新版本。
opm update
# 卸载新安装的包
opm remove lua-resty-foo
# 所有命令都可以跟随 --cwd 选项在当前工作目录(在 ./resty/modules/ 下)而不是系统范围的位置工作
库作者
cd /path/to/lua-resty-foo/
opm build
# optional:
# cd lua-resty-foo-VERSION/ && opm server-build
# 您可能需要编辑 ~/.opmrc 文件来设置您的 github
# 个人访问令牌。 “opm upload”的第一次运行将创建
# 为您提供样板文件 ~/.opmrc 文件。
opm upload
# 清理 opm build 命令的剩余部分。
opm clean dist
LuaRocks
LuaRocks 是 Lua 的包管理器,不同于 OPM 只包含OpenResty 相关的库,LuaRocks 还包含大量 Lua 的库。LuaRocks 上绝大部分的 Lua 库都可能会阻塞 OpenResty 的事件循环,而让性能急剧下降,需要仔细分辨。
安装使用
$ wget 官网下载 luarocks-3.9.2.tar.gz
$ tar zxpf luarocks-3.9.2.tar.gz
$ cd luarocks-3.9.2
$ ./configure && make && sudo make install
# 安装包
$ sudo luarocks install luasocket
$ lua
Lua 5.3.5 Copyright (C) 1994-2018 Lua.org, PUC-Rio
> require "socket"
# 上传
$ luarocks upload my_thing-1.0-1.rockspec