如何解决apk 安装了一个包,但没有找到在 Docker 上
我使用的是基于 alpine 的 docker 镜像 firesh/nginx-lua。
我安装包管理器 luarocks 如下:
/bin/luarocks-3.5.0 # apk update
fetch http://mirrors.aliyun.com/alpine/v3.8/main/x86_64/APKINDEX.tar.gz
fetch http://mirrors.aliyun.com/alpine/v3.8/community/x86_64/APKINDEX.tar.gz
v3.8.5-66-gccbd6a8ae7 [http://mirrors.aliyun.com/alpine/v3.8/main]
v3.8.5-66-gccbd6a8ae7 [http://mirrors.aliyun.com/alpine/v3.8/community]
OK: 9564 distinct packages available
/bin/luarocks-3.5.0 # apk add luarocks
OK: 53 MiB in 38 packages
/bin/luarocks-3.5.0 # luarocks
sh: luarocks: not found
如您所见,luarocks 已安装,但我尝试使用时未找到。
关于如何在这个 docker 上安装 luarocks 的任何建议?
解决方法
我认为这张图片不适合您想要做的事情。这是启用了 LUA(用于 nginx)的 NginX。该映像不包含任何 lua
开发环境。使用if for lua,先安装lua
docker run -ti --rm --name test firesh/nginx-lua sh / # apk update
fetch http://mirrors.aliyun.com/alpine/v3.8/main/x86_64/APKINDEX.tar.gz
fetch http://mirrors.aliyun.com/alpine/v3.8/community/x86_64/APKINDEX.tar.gz
v3.8.5-66-gccbd6a8ae7 [http://mirrors.aliyun.com/alpine/v3.8/main]
v3.8.5-66-gccbd6a8ae7 [http://mirrors.aliyun.com/alpine/v3.8/community]
OK: 9564 distinct packages available
/ # apk add lua-dev
(1/4) Installing lua5.1-libs (5.1.5-r7)
(2/4) Installing lua5.1 (5.1.5-r7)
(3/4) Installing pkgconf (1.5.3-r0)
(4/4) Installing lua5.1-dev (5.1.5-r7)
Executing busybox-1.28.4-r3.trigger
OK: 52 MiB in 36 packages
/ # apk add luarocks
(1/7) Installing ca-certificates (20191127-r2)
(2/7) Installing nghttp2-libs (1.39.2-r0)
(3/7) Installing libssh2 (1.9.0-r1)
(4/7) Installing libcurl (7.61.1-r3)
(5/7) Installing curl (7.61.1-r3)
(6/7) Installing luarocks (2.4.4-r0)
(7/7) Installing luarocks5.1 (2.4.4-r0)
Executing busybox-1.28.4-r3.trigger
Executing ca-certificates-20191127-r2.trigger
OK: 54 MiB in 43 packages
/ # luarocks
sh: luarocks: not found
/ # luarocks-
luarocks-5.1 luarocks-admin-5.1
/ # luarocks-5.1 --version
/usr/bin/luarocks-5.1 2.4.4
LuaRocks main command-line interface
在此之后,您将拥有 luarocks-5.1
作为命令。如果您想在没有 -5.1
的情况下使用它,请使用
/ # alias luarocks=luarocks-5.1
/ # luarocks
Warning: The directory '/root/.cache/luarocks' or its parent directory is not owned by the current user and the cache has been disabled. Please check the permissions and owner of that directory. If executing /usr/bin/luarocks-5.1 with sudo,you may want sudo's -H flag.
LuaRocks 2.4.4,the Lua package manager
...
...
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。