在 Ubuntu 20.04 上通过 apt-get 安装 OpenResty
今天我想演示一下如何通过 apt-get
在 Ubuntu 20.04 上安装 OpenResty 。
我们将在这个视频中使用这个全新安装的 Ubuntu 20.04 。
我们可以到 openresty.org 网站上找到相关的说明,这里可以找到所有启用 APT 仓库和安装 OpenResty Deb 包的命令。
回到我们的 Ubuntu 20.04 系统。如果你已经有服务监听本地 80 端口,那么你应该先禁用它。
sudo lsof -i:80
在这里,我们没有任何这样的服务。
首先,要确保系统时间正确。
sudo ntpdate -v time.google.com
你可能想在这里使用你附近的其他 NTP 服务器。
我们应该通过添加 GPG 公钥来安装一些需要的组件。这些可以在之后删除。
sudo apt-get -y install --no-install-recommends wget gnupg ca-certificates
然后导入我们的 GPG 密钥。
wget -O - https://openresty.org/package/pubkey.gpg | sudo apt-key add -
接着添加我们的官方 APT 库。
echo "deb http://openresty.org/package/ubuntu $(lsb_release -sc) main" > openresty.list
sudo cp openresty.list /etc/apt/sources.list.d/
请注意,这是针对 x86_64
或 amd64
系统的。
对于 Aarch64 或 ARM64 系统,你应该使用这个 URL 来代替。
echo "deb http://openresty.org/package/arm64/ubuntu $(lsb_release -sc) main"
现在更新 APT 索引。
sudo apt-get update
请注意,这里我们需要 sudo
。
现在是时候安装我们的主要 RPM 包,openresty
。
sudo apt-get -y install --no-install-recommends openresty
检查 openresty
可执行文件是否可用。
which openresty
这个 openresty
可执行文件只是一个符号链接。
file `which openresty`
并检查其版本。
openresty -V
我们可以像这样启动默认的 openresty 服务。
sudo systemctl start openresty
检查 nginx 进程是否启动并运行。
ps aux|grep nginx
完美。
用 curl
命令测试默认主页。
curl 127.0.0.1/
是的,它的工作。
但请注意,resty 命令行工具还没有安装。
which resty
如果你想要它,那么你可以从同一个仓库安装 openresty-resty
RPM 包。
sudo apt-get -y install openresty-resty
现在应该可以了。
which resty
resty -e 'print("Hello Resty")'
同样,如果你想使用 restydoc
命令行工具,你应该安装 openresty-doc
包。
sudo apt-get -y install openresty-restydoc
现在也有了。
restydoc -s content_by_lua_file
我们也可以安装 OPM 来安装更多由 OpenResty 社区贡献的 Lua 模块。
sudo apt-get -y install openresty-opm
现在可以尝试安装 James Hurst 编写的 lua-resty-http
库。
sudo opm get pintsized/lua-resty-http
试着用 resty
工具加载它。
resty -e 'require "resty.http"'
成功了!
还有一个 OpenResty 的调试构建,其中包括调试日志和所有启用的内部断言。
sudo apt-get -y install openresty-debug
我们可以这样调用这个调试版的 openresty 。
which openresty-debug
这个 openresty-debug
可执行文件也是一个符号链接。
file `which openresty-debug`
我们不应该在生产中使用它,因为它比发行版慢得多。
此外,还有可以通过 Valgrind 检查内存问题的特殊构建。
sudo apt list openresty-valgrind
当你有内存问题要调试时,可以试试这些。我们可能会在以后的教程中涉及这些内容。
要将 OpenResty 包升级到最新版本,只需运行这些命令。
sudo apt-get update
sudo apt-get --only-upgrade -y install 'openresty*'
检查我们 openresty 仓库中所有可用的软件包。
apt list 'openresty*' | less
这里有很多二进制包。
可以在网页上找到所有这些 Deb 包的详细文档,https://openresty.org/en/deb-packages.html ,有很多软件包供用户选择。
今天我就讲这么多。祝大家玩得开心!
如果你喜欢这个教程,请订阅这个博客网站和我们的 YouTube 频道 或 B 站频道。谢谢!
关于本文和关联视频
本文和相关联的视频都是完全由我们的 OpenResty Showman 产品从一个简单的剧本文件自动生成的。
关于作者
章亦春是开源 OpenResty® 项目创始人兼 OpenResty Inc. 公司 CEO 和创始人。
章亦春(Github ID: agentzh),生于中国江苏,现定居美国湾区。他是中国早期开源技术和文化的倡导者和领军人物,曾供职于多家国际知名的高科技企业,如 Cloudflare、雅虎、阿里巴巴, 是 “边缘计算“、”动态追踪 “和 “机器编程 “的先驱,拥有超过 22 年的编程及 16 年的开源经验。作为拥有超过 4000 万全球域名用户的开源项目的领导者。他基于其 OpenResty® 开源项目打造的高科技企业 OpenResty Inc. 位于美国硅谷中心。其主打的两个产品 OpenResty XRay(利用动态追踪技术的非侵入式的故障剖析和排除工具)和 OpenResty Edge(最适合微服务和分布式流量的全能型网关软件),广受全球众多上市及大型企业青睐。在 OpenResty 以外,章亦春为多个开源项目贡献了累计超过百万行代码,其中包括,Linux 内核、Nginx、LuaJIT、GDB、SystemTap、LLVM、Perl 等,并编写过 60 多个开源软件库。
关注我们
如果您喜欢本文,欢迎关注我们 OpenResty Inc. 公司的博客网站 。也欢迎扫码关注我们的微信公众号:
翻译
我们提供了英文版原文和中译版(本文) 。我们也欢迎读者提供其他语言的翻译版本,只要是全文翻译不带省略,我们都将会考虑采用,非常感谢!