mirror of
https://github.com/0xJacky/nginx-ui.git
synced 2026-04-25 08:45:58 +03:00
[GH-ISSUE #988] 请求在安装脚本及升级页面添加对Alpin系统的支持 #528
Labels
No labels
Q/A
bug
casdoor
dependencies
docker
documentation
duplicate
enhancement
help wanted
invalid
lego
platform:openwrt
platform:windows
pull-request
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/nginx-ui#528
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @bigoovip on GitHub (Apr 26, 2025).
Original GitHub issue: https://github.com/0xJacky/nginx-ui/issues/988
本项目当前的安装脚本主要支持的是使用systemd的debian/ubuntu等系统,没有支持使用OpenRC的Alpine等系统,在Alpine系统无法通过安装脚本安装及管理。
同时,在登陆项目后,在升级页面,在debian系统中可成功升级,但Alpine系统总是升级失败。
故请求,在安装脚本及项目的升级页面添加对Alpin系统的支持。
@0xJacky commented on GitHub (Apr 26, 2025):
已经有在计划中了。另外升级失败可以看看日志吗
@bigoovip commented on GitHub (Apr 26, 2025):
感谢,等待支持。
另外,升级失败后,我直接手动升级了,未保留日志。
@0xJacky commented on GitHub (Apr 26, 2025):
你可以试试点击重新安装,再看看有没有报错的信息
@0xJacky commented on GitHub (May 7, 2025):
rc.6 的 OTA 已确认可以在 Apline 上使用
@bigoovip commented on GitHub (May 7, 2025):
@0xJacky nginx-ui 本身可以在 Apline 上使用,但我刚在Alpine中尝试从rc.5升级到rc.6并不成功,手动更新后,点击“重新安装”,一样不能重新安装成功,安装页面显示如下
此时,页面会弹出消息——“Server error”,且无法访问Nginx UI,/tmp/文件夹中含有临时目录nginx-ui-upgrade-1102384980(内含nginx-ui二进制文件等),/usr/local/bin/目录中有原文件nginx-ui二进制文件和nginx-ui-temp-52091824.tar.gz文件,重启nginx-ui后,可正常访问Nginx UI。
因此推测,核心升级的命令在alpine中未正确执行,应该是将/tmp/nginx-ui-upgrade-1102384980中的nginx-ui二进制文件移动并覆盖到/usr/local/bin/目录中,且应清除临时目录、临时文件后重新启动nginx-ui
输入命令
cat /etc/alpine-release,可看到alpine版本为3.20.0@0xJacky commented on GitHub (May 7, 2025):
😂,我前天做了个脚本,在 alpine 上连续更新了几百次都成功了
@0xJacky commented on GitHub (May 7, 2025):
是不是你之前安装的时候不是在 root 用户或者目录出现权限问题?你可以试试在终端中直接执行 nginx-ui 在前台中运行,然后 ota 查看报错信息。
@bigoovip commented on GitHub (May 7, 2025):
@0xJacky 直接运行命令启动,内容如下:
此时可以进入nginx ui,在点击“重新启动”按钮后,终端在上述输出内容后面,只输出了以下内容:
此时相当于前面命令被结束了,出现前述无法进入页面、新nginx-ui未移至/usr/local/bin/目录、临时目录及文件未清理、nginx-ui未启动等情况。
还是说,之前是手动安装的——但我使用的目录是参考之前systemd脚本的目录,相关目录非内部脚本使用的目录?如果是,默认使用的目录是什么?
@0xJacky commented on GitHub (May 7, 2025):
你可以尝试删除之前手动安装的配置,使用一键安装脚本再试试更新?
打扰一下,你的 Alpine VM 的内存(RAM)是多大的呀
@bigoovip commented on GitHub (May 7, 2025):
@0xJacky 很遗憾,一键安装脚本未成功,提示如下
使用的是pve ct,内存256M
btw,官方文档中安装命令也不适合alpine,比如alpine使用的是sh而不是bash.
@Hintay commented on GitHub (May 7, 2025):
目前 OTA 会用到比我们预想中更多的 RAM,256M 应该无法成功更新,后续我们会通过缩减 ACME-DNS 的 SDK 包来尽量缩小程序大小。
请尝试用下面的指令使用
dev分支的安装脚本:@0xJacky commented on GitHub (May 7, 2025):
如果是虚拟机的话也可以增加一下内存,至少需要1G才能正常更新。
@bigoovip commented on GitHub (May 8, 2025):
@0xJacky
经测试,在手动安装到默认目录的情况下,内存增加到1g,ota更新成功。
经测试,在完全删除原手动安装的文件后,使用dev脚本安装成功。
感谢,盼以后ota时内存占用能少一些。
@0xJacky commented on GitHub (May 9, 2025):
下一版本的 OTA 更新将显著降低内存占用:
经过我们在 linux amd64 的测试中,原有的 OTA 更新会在峰值时占用大约 700MB+ 的内存空间,经过多方面的优化,现在占用大约 150MB+。
有关 lego 的节省空间计划细节请参阅:https://github.com/0xJacky/nginx-ui/discussions/1033
同时,我们改进了 minio/self-update 在替换二进制时会导致突发占用几倍于原二进制体积的内存的问题。
这是我们的项目地址:nginxui/selfupdate 我计划在一段时间后 PR 回原项目。
The next version of the OTA update will significantly reduce memory usage:
After our testing on Linux amd64, the original OTA update would occupy approximately 700MB+ of memory space at peak times. Through various optimizations, it now occupies approximately 150MB+.
For details of Lego's space-saving plan, please refer to: #103
Meanwhile, we have addressed the issue where minio/self-update would unexpectedly consume several times the original
memory volume when replacing the binary.
This is the address of our project: nginxui/selfupdate . I plan to create a pull request back to the original project after some time.