Nginx UI 通过 Homebrew 安装指南:macOS / Linux 从安装到服务化运维
后端前端运维MCP 服务【免费下载链接】nginx-uiYet another WebUI for Nginx项目地址https://gitcode.com/gh_mirrors/ngi/nginx-ui点击查看免费下载本指南面向已安装 Homebrew 的 macOS 与 Linux 用户完整讲解 Nginx UI 的安装、服务管理、手动运行、配置说明、升级、卸载与常见故障排查。读完本文你将掌握brew install/brew services的完整用法理解安装后生成的app.ini配置文件各段含义并能独立解决端口冲突、日志查看、权限与服务无法启动等日常运维问题。适用平台与前置条件Homebrew 安装方式专为两类用户设计macOSmacOS 11 Big Sur 或更高版本支持amd64Intel与arm64Apple Silicon两种架构Linux大多数主流发行版Ubuntu、Debian、CentOS 等Homebrew 通常以 Linuxbrew 形式安装在/home/linuxbrew/下。前提是系统上已安装 Homebrew。如果尚未安装官方提供的一键脚本为/bin/bash -c $(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)注意文档中的外部安装脚本、官方文档与 GitHub 链接仅用于说明 Homebrew 生态与上游项目本文后续所有操作与配置均以当前仓库nginx-ui的实际实现为准。安装 Nginx UI执行如下命令即可完成安装brew install 0xjacky/tools/nginx-ui该命令会依次完成将0xjacky/toolstap 添加到你的 Homebrew下载并安装 Nginx UI 的最新稳定版本配置好运行时所需的依赖创建默认配置文件与数据目录。验证安装安装完成后用版本命令验证二进制是否可用nginx-ui --version从源码看该版本输出由 internal/cmd/version.go 中的VersionPrinter生成格式包含程序名、版本号、构建 ID、短哈希以及 Go 运行时与目标平台信息例如nginx-ui 2.x.x 123(456) abcdef1 (go1.x.x linux/amd64)Nginx UI 的 CLI 根命令定义在 internal/cmd/main.go根命令名为nginx-ui默认子命令为serve即不带参数直接运行nginx-ui等价于nginx-ui serve此外还提供了reset-password、cert、ctl、host-setup、upgrade-docker-step2等子命令--config全局参数用于指定配置文件路径默认值为app.ini。服务管理Nginx UI 可以借助 Homebrew 的服务管理能力作为系统服务运行。启动服务# 启动服务并设置为开机自启 brew services start nginx-ui # 仅当前会话运行不设置开机自启 brew services run nginx-ui停止服务brew services stop nginx-ui重启服务brew services restart nginx-ui查看服务状态brew services list | grep nginx-uibrew services info nginx-ui则可以查看更详细的服务状态与日志文件路径见下文“查看服务日志”。手动运行如果你更倾向于手动运行而非注册为系统服务# 前台运行默认读取 ./app.ini nginx-ui # 指定自定义配置文件 nginx-ui serve -config /path/to/your/app.ini # 后台运行 nohup nginx-ui serve 补充说明serve子命令还支持-p/--pidfile参数指定 PID 文件路径见 internal/cmd/main.go 中的 Flag 定义便于外部进程管理工具跟踪进程若以 root 之外的普通用户运行请确保该用户对 Nginx 配置文件目录与 Nginx UI 数据目录具有读写权限。配置说明安装过程会自动生成默认配置文件app.ini其位置因平台而异平台配置文件路径数据目录macOSApple Silicon/opt/homebrew/etc/nginx-ui/app.ini/opt/homebrew/var/nginx-ui/macOSIntel/usr/local/etc/nginx-ui/app.ini/usr/local/var/nginx-ui/Linux/home/linuxbrew/.linuxbrew/etc/nginx-ui/app.ini/home/linuxbrew/.linuxbrew/var/nginx-ui/安装后默认生成的最小配置如下[app] PageSize 10 [server] Host 0.0.0.0 Port 9000 RunMode release [cert] HTTPChallengePort 9180 [terminal] StartCmd login结合仓库源码可以更深入地理解这些配置项的实际作用[app] PageSize列表页默认分页大小。该值在 settings/server_v1.go 的serverV1.PageSize中被读取并映射到 V2 配置结构的App.PageSize。[server] Host / Port / RunModeWeb 服务监听地址、端口与运行模式。源码在 settings/settings.go 的Init中显式兜底当Port 0时强制设为默认端口9000保证即使配置缺失也能正常启动。[cert] HTTPChallengePortACME HTTP-01 挑战端口默认9180。对应 settings/cert.go 中CertSettings的HTTPChallengePort: 9180默认值证书签发相关实现见 api/certificate 与 internal/cert。[terminal] StartCmdWeb 终端启动时执行的命令。对应 settings/terminal.goWindows 平台默认为cmd.exe其余平台默认login与安装文档给出的login一致。需要说明的是Nginx UI 的配置系统存在 V1 → V2 的自动迁移机制当app.ini中检测到旧的[server]段如jwt_secret非空时会由 settings/server_v1.go 中的migrate函数自动完成字段映射并回写文件同时将旧的环境变量如SERVER_HTTP_HOST自动迁移到新命名如NGINX_UI_SERVER_HOST。因此升级后如果配置文件“变了样”属正常现象。此外所有配置段都支持以NGINX_UI_SECTION_KEY形式的环境变量覆盖例如NGINX_UI_SERVER_PORT9001。更完整的配置项数据库、认证、Nginx 控制、证书、集群等可参考 docs/guide/config-server.md、docs/guide/config-app.md、docs/guide/config-database.md、docs/guide/config-cert.md 与 docs/guide/config-terminal.md。更新仅更新 Nginx UIbrew upgrade nginx-ui更新 Homebrew 与所有包brew update brew upgrade更新后若配置发生不兼容变化启动时通常会有提示建议更新前先备份app.ini与数据目录。卸载停止服务并卸载# 先停止服务 brew services stop nginx-ui # 卸载软件包 brew uninstall nginx-ui移除 Tap可选如果不再需要该 tapbrew untap 0xjacky/tools移除配置与数据谨慎操作::: warning以下操作将永久删除你的全部配置、站点、证书与数据执行前务必先做好备份可使用 Web 界面的备份功能或直接拷贝var/nginx-ui/目录。:::# macOSApple Silicon sudo rm -rf /opt/homebrew/etc/nginx-ui/ sudo rm -rf /opt/homebrew/var/nginx-ui/ # macOSIntel sudo rm -rf /usr/local/etc/nginx-ui/ sudo rm -rf /usr/local/var/nginx-ui/ # Linux sudo rm -rf /home/linuxbrew/.linuxbrew/etc/nginx-ui/ sudo rm -rf /home/linuxbrew/.linuxbrew/var/nginx-ui/故障排查端口冲突默认 Web 端口为9000若被占用需修改配置文件编辑配置文件# macOSApple Silicon sudo nano /opt/homebrew/etc/nginx-ui/app.ini # macOSIntel sudo nano /usr/local/etc/nginx-ui/app.ini # Linux sudo nano /home/linuxbrew/.linuxbrew/etc/nginx-ui/app.ini修改[server]段的端口[server] Host 0.0.0.0 Port 9001 RunMode release重启服务brew services restart nginx-ui查看服务日志Homebrew 服务日志Nginx UI 的 Homebrew formula 已内置日志配置# 查看服务状态与日志文件路径 brew services info nginx-ui # 查看标准输出日志 tail -f $(brew --prefix)/var/log/nginx-ui.log # 查看错误日志 tail -f $(brew --prefix)/var/log/nginx-ui.err.log # 同时查看两份日志 tail -f $(brew --prefix)/var/log/nginx-ui.log $(brew --prefix)/var/log/nginx-ui.err.logsystemd 日志LinuxLinux 系统若使用 systemd 管理# 实时查看服务日志 journalctl -u homebrew.mxcl.nginx-ui -f # 查看最近一小时日志 journalctl -u homebrew.mxcl.nginx-ui --since 1 hour ago手动调试前台运行以直接观察输出# 前台运行并指定配置便于看到全部输出 nginx-ui serve -config $(brew --prefix)/etc/nginx-ui/app.ini # 检查进程是否在运行 ps aux | grep nginx-ui权限问题管理 Nginx 配置时遇到权限报错按以下步骤处理确认当前用户对 Nginx 配置文件具备读写权限部分操作如修改/etc/nginx下的文件可能需要以更高权限运行 Nginx UI检查文件权限# 检查配置文件权限 ls -la $(brew --prefix)/etc/nginx-ui/app.ini # 检查数据目录权限 ls -la $(brew --prefix)/var/nginx-ui/服务无法启动按顺序排查检查服务状态brew services list | grep nginx-ui确认配置文件存在且参数合法# 检查配置文件是否存在 ls -la $(brew --prefix)/etc/nginx-ui/app.ini # 查看 serve 子命令帮助 nginx-ui serve -config $(brew --prefix)/etc/nginx-ui/app.ini --help前台运行以查看具体报错nginx-ui serve -config $(brew --prefix)/etc/nginx-ui/app.ini检查端口占用# 检查 9000 端口是否被占用 lsof -i :9000 # 检查 HTTP 挑战端口9180是否被占用 lsof -i :9180获取帮助与下一步遇到问题时优先参考仓库内文档docs/guide 目录下的安装与配置系列文档例如 install-script-linux.mdLinux 脚本安装、config-server.md服务端配置、config-nginx.mdNginx 控制等如果问题仍未解决可在上游项目的 Issues 中检索是否已有相同问题或提交新的 Issue 并附上日志与复现步骤。安装并启动成功后建议按以下顺序完成初始化浏览器访问http://localhost:9000若修改过端口则以实际端口为准完成首次启动设置向导创建管理员账号等在“站点”中配置你的 Nginx 站点或在“Nginx 配置”中直接编辑按需深入阅读 docs/guide/config-cert.md证书管理、docs/guide/config-cluster.md多主机集群等文档进行进阶配置。赞分享后端前端运维MCP 服务【免费下载链接】nginx-uiYet another WebUI for Nginx项目地址https://gitcode.com/gh_mirrors/ngi/nginx-ui点击查看免费下载相关推荐在macOS上通过Homebrew安装escrcpy项目指南在macOS上通过Homebrew安装escrcpy项目指南 escrcpy是一款优秀的开源项目它为用户提供了在电脑上显示和控制Android设备的功能。对于桌面应用移动开发开发工具Vector 在 Windows 上的安装与运维指南从 ZIP/MSI 安装到 Windows 服务化运行Vector 在 Windows 上的安装与运维指南从 ZIP/MSI 安装到 Windows 服务化运行 Vector GitHub_Trending/v可观测性数据工程数据集成日志分析Eclipse Mosquitto 在 macOS 上通过 Homebrew 安装与使用指南Eclipse Mosquitto 在 macOS 上通过 Homebrew 安装与使用指南 本指南围绕 Eclipse Mosquitto 项目官方发布的一则后端消息队列消息路由创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

国产MCU替代STM32全攻略:选型、移植与避坑指南

国产MCU替代STM32全攻略:选型、移植与避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/24 14:54:09 阅读更多 →
央国企选干部管理系统的3个常见误区,你中了几个?

央国企选干部管理系统的3个常见误区,你中了几个?

干部管理系统选型,失败的项目往往不是因为选了差的产品,而是把注意力放错了地方:盯着功能清单的长短、参数表的对比、报价的高低,却漏掉三件决定系统能不能真正用起来的事——清单背后的适配能力、信创的准入属性、AI的实际效果。…

2026/9/24 14:54:09 阅读更多 →
从零搭起 Sunshine 游戏串流主机:Moonlight 配套自托管方案实操全解

从零搭起 Sunshine 游戏串流主机:Moonlight 配套自托管方案实操全解

从零搭起 Sunshine 游戏串流主机:Moonlight 配套自托管方案实操全解 【免费下载链接】Sunshine Self-hosted game stream host for Moonlight. 项目地址: https://gitcode.com/GitHub_Trending/su/Sunshine Sunshine 游戏串流,说白了就是把你自己…

2026/9/24 14:54:09 阅读更多 →

最新新闻

Prisma 数据建模完全指南:用 GraphQL SDL 编写 Data Model 并生成数据库 Schema

Prisma 数据建模完全指南:用 GraphQL SDL 编写 Data Model 并生成数据库 Schema

后端数据库GraphQL 【免费下载链接】prisma1 💾 Database Tools incl. ORM, Migrations and Admin UI (Postgres, MySQL & MongoDB) [deprecated] 项目地址: https://gitcode.com/gh_mirrors/pr/prisma1 点击查看 免费下载 导读 Prisma 使用 Graph…

2026/9/24 16:18:24 阅读更多 →
F´ 框架中的 Svc::BufferManager:基于固定分箱(Bin)池的内存缓冲区管理器组件深度解析

F´ 框架中的 Svc::BufferManager:基于固定分箱(Bin)池的内存缓冲区管理器组件深度解析

F 框架中的 Svc::BufferManager:基于固定分箱(Bin)池的内存缓冲区管理器组件深度解析 【免费下载链接】fprime F - A flight software and embedded systems framework 项目地址: https://gitcode.com/gh_mirrors/fp/fprime 导读 Svc…

2026/9/24 16:18:24 阅读更多 →
【Dify】Python智能自动化代码生成应用

【Dify】Python智能自动化代码生成应用

基于大语言模型的智能自动化工作流,正在推动代码生成与执行方式的变革。自然语言描述经过系统处理,能够一键转化为可执行的Python脚本,极大简化了代码开发和数据分析的门槛。 本文围绕Dify平台的智能自动化代码生成工作流展开,梳理核心流程、节点作用和典型应用场景,助力…

2026/9/24 16:18:24 阅读更多 →
【Coze】【视频】儿童神话故事工作流

【Coze】【视频】儿童神话故事工作流

今天给大家演示一个儿童古风诗词视频制作的 Coze 工作流,它可以将用户输入的主题或提示词自动生成古风诗词风格的短视频文案,并结合语音合成、字幕生成和背景音乐搜索,实现完整的视频内容输出。通过该工作流,创作者无需手动编写文案或配音,即可快速生成音画同步、风格统一…

2026/9/24 16:18:24 阅读更多 →
【Coze】【视频】火柴人蓝底工作流

【Coze】【视频】火柴人蓝底工作流

今天给大家演示一个 火柴人减肥励志 Coze 工作流。这个工作流以“励志口播 + 红黑矢量画面 + 自动化合成视频”的方式,把大模型生成的减肥励志文案、配套矢量插画、语音播报和视频时间线整合在一起,最终输出一个完整的视频草稿。通过这一流程,用户无需手工处理复杂的音频、图…

2026/9/24 16:18:24 阅读更多 →
【Dify】大语言模型自动问答与代码执行应用

【Dify】大语言模型自动问答与代码执行应用

大语言模型驱动的智能自动化,正逐步改变代码执行与数据交互的方式。依托runLLMCode工作流,常见的数据处理与个性化场景实现了高效连接、灵活拓展。 本文梳理runLLMCode的核心节点与流程设计,解析其在自动问答、代码执行及外部API集成中的实践方案,旨在为自学编程用户提供高…

2026/9/24 16:17:24 阅读更多 →

日新闻

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为…

2026/9/24 0:00:19 阅读更多 →
单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

单细胞注释实战:基于Scanpy的标记基因与参考映射流程解析

简介:一份基于单细胞RNA测序数据的细胞类型注释算法研究Python毕业设计源码,针对计算机相关专业正在做毕设或需要项目实战的学习者,可用于课程设计与期末大作业。项目代码完整、经导师指导评审通过,可直接运行,覆盖数据…

2026/9/24 0:00:19 阅读更多 →
C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

C#源生成器实战:用增量生成器替代反射,告别AOT崩溃

第一次在项目里被反射卡住,是在一个老旧的WinForms模块里:几十个类依赖PropertyChanged通知,运行时反射读属性、发通知,每次启动慢半拍不说,一上.NET Native/AOT裁剪模式几乎全面崩盘。后来我把这段逻辑全部改成C#源生…

2026/9/24 0:00:19 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/24 14:34:13 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/24 9:10:42 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/24 14:33:56 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/24 12:50:34 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/24 14:33:48 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/24 12:49:17 阅读更多 →