编者注:本文转载自PHP武器库的面板测评文章,原文链接为https://phpreturn.com/index/a64998e6dc661f.html 。1Panel开源项目组征得作者同意转载此文,文中部分标点和英文拼写经过细微编辑。
需要说明的是,本次测评文章的发布时间为2023年6月。经过数月的发展,1Panel项目在广大社区用户的驱动下正在逐渐完善,很多期待中的功能已经在后期的版本中陆续被发布。
目前,1Panel v1.9版本已经支持PHP版本切换功能,支持MariaDB数据库的可视化管理。FTP服务方面,用户可以在1Panel的应用商店中添加SFTPGo应用,同时应用商店中也收录了三款邮件服务应用。文档方面,1Panel也提供了后端API接口文档。另外,1Panel也已经支持了Supervisor进程守护功能。针对文中提及的“服务器终端默认情况下找不到对应php命令”的问题,按照1Panel的产品设计,用户需要进入容器终端内执行php相关命令。
1Panel开源项目组会认真聆听广大社区用户的反馈,不断完善1Panel的功能、稳定性和安全性,打造一款现代化、开源的Linux服务器运维管理面板。
前言
相较于其他语言的开发者,PHP开发和部署更倾向于使用“面板”来搭建环境。因此,PHP武器库将专门对各种服务器面板进行详细的测评。测评内容主要包括:商业支持、安装方式、截图、站点管理、伪静态设置、SSL、数据库、FTP、邮箱、语言、接口、备份恢复、定时任务、守护进程、系统兼容和更多特色特点。
测评介绍
本期测评试用一下1Panel这款面板。1Panel是飞致云旗下开源产品。整个界面简洁清爽,后端使用Go语言开发,前端使用VUE的Element-Plus作为UI框架,整个面板的管理都是基于Docker的,想法很先进。官方还提供了视频的使用教程,本期为大家按照本专栏的基本内容进行多方面的测评。
产品介绍
1Panel是一个现代化、开源的Linux服务器运维管理面板,其功能和优势包括:
■ 快速建站:深度集成Wordpress和Halo,域名绑定、SSL证书配置等一键搞定;
■ 高效管理:通过Web端轻松管理Linux服务器,包括主机监控、文件管理、数据库管理、容器管理等;
■ 安全可靠:基于容器来管理和部署应用,最小漏洞暴露面,提供防火墙和日志审计等功能;
■ 一键备份:支持一键备份和恢复,备份数据到各类云端存储,永不丢失;
■ 应用商店:精选各类高质量开源工具和应用软件,助力您轻松安装和升级。
测评项目
商业支持
开源,免费试用,提供企业微信客服、交流群、Git社区、在线论坛等服务,提供爱发电捐助通道。
安装方式
1Panel提供了一键安装的命令,分别为RedHat/CentOS、Ubuntu、Debian提供了略微不同的安装脚本,非常方便。且无论是国内外网络安装过程都非常快,这里给出5分。
Debian命令如下:
curl -sSL https://resource.fit2cloud.com/1panel/package/quick_start.sh -o quick_start.sh && bash quick_start.sh
安装过程中会生成随机的管理端口、账户、密码。也是很细心的功能实现。
以下分别是安装脚本开始运行的欢迎界面和安装成功的输出结果的截图:
登录页面如下:
面板首页:
站点管理
在进行创建站点之前,需要先安装基本的环境,1Panel使用OpenResty当做HTTP服务器,PHP支持5.4-8.2,都是以Docker镜像的方式安装。但是对于PHP扩展的安装,每次调整扩展,都需要重新构建PHP的镜像,还是有些麻烦。
可以通过下面的截图看到,创建站点的流程还是很顺畅的,并且对站点的管理也很齐全,包括在线的文件管理、伪静态、二级目录等。
但是对于面板安装的PHP是以镜像的方式安装,所以终端里是没有php命令的:
root@C20230626218268:~# php -v
-bash: php: command not found
这种情况就比较麻烦,很多时候,我们是需要在命令行中使用PHP的,最好能随时的切换PHP的命令行版本。
伪静态
伪静态的设置非常方便,可以直接在线编辑,也有提供的各种框架的模板。
SSL
面板也提供了一键申请SSL的方式,需要先设置一个基本的Acme账户,然后在证书管理的模块根据实际情况申请证书,比如DNS验证、HTTP验证等。证书申请完之后,再去站点管理那里去设置自动申请的证书。
总体而言,证书管理相对独立,与网站之间的关联也很方便。
数据库
面板支持多个数据库,包括MySQL、MaraDB、PostgreSQL、MongoDB、Redis等,并且只要端口不要冲突,可以同时安装。
虽然面板提供了在线的数据库管理功能,但似乎只对MySQL有效,对于MariaDB或其他的几个并不行。
另外,1Panel安装的数据库也只能通过127.0.0.1去连接,或许需要手动修改MySQL的配置文件才能监听到0.0.0.0上。
FTP
面板没有提供FTP服务功能。实际上对FTP功能的需求,不同的用户很不一样。对于作者来说,从来都不用FTP去管理,但是对于其他一些情况,可能还是很有必要的。
邮箱
面板没有提供邮箱服务功能,或许以后会在应用市场上架新的应用来弥补这一块。
语言
面板支持中英双语切换,且由国人开发,国内使用体验无障碍。
接口
面板并没有提供开放的接口密钥和文档,但实现这一块并不难,本身整个面板就是前后端分离的。但目前官方并没有提供这方面的资料。
备份恢复
1Panel实际上是通过镜像管理各个应用的,所以可以对各种运行环境进行备份,比如服务器、数据库、网站的镜像等。同时也可以针对网站和数据库进行备份和恢复。面板也支持设置第三方存储,将备份的文件存到第三方上。也可以通过计划任务进行网站的备份操作。
面板还支持快照功能,将整个面板备份下来,存到第三方存储上,算是一大亮点。
定时任务
面板提供了标准的定时任务设置。
守护进程
面板目前没有提供守护进程的功能,同时由于安装的PHP都在镜像中,终端默认情况下找不到对应的PHP。
系统兼容
该面板兼容RedHat、CentOS、Ubuntu、Debian等,没有提供具体的版本,但兼容性应当很好,后端使用Go语言开发,大多数的环境管理都是通过镜像去实现。
更多特色特点
1Panel的应用市场提供了git服务、CI/CD等方面的应用,并且整个面板通过镜像实现服务器的环境管理,应用市场一定会成为一大特色。
面板的风格也很清爽,功能也很多很细致,本篇文章截图展示的只是冰山一角。当你使用时,你就会发现,原来这些功能也都有,而且做得很好。
另一大特色是,该面板支持自适应手机端的所有操作,在某些情况下,会让用户很方便地管理服务器。比如紧急配置一个HTTPS之类的。
测评总结
1Panel很符合我的胃口,1Panel不是纯粹的服务器管理面板,更像是通过Docker镜像实现的站点管理面板。这种“本质”实际上更符合国内用户的使用习惯,我也很喜欢这种体验方式。
1Panel虽然缺少自动化的“站点迁移”、“数据库迁移”等功能,但是自带的快照功能能弥补这一块,可以将整个面板做成快照然后迁移到新的服务器上。
1Panel目前缺少对邮箱服务器的支持,虽然国内不流行这样做,但我个人很在乎这一点。邮箱是“服务器”的基本服务功能之一,当你去学习服务器的运维时,配置邮箱是必备的课程。但1Panel应该很容易增加这一特性,增加一个镜像就好了。
1Panel安装的PHP不能在终端中调用,也没有提供便捷的来回切换PHP版本的操作。对于大多数用户可能用不到,然而现在PHP开发者对命令行的使用会越来越多,像Webman、Swoole等框架也会越来越多,1Panel应当考虑去满足这样的需求。另外,如果能在面板中一键将Webman类的框架封装成镜像,那真是太强了。
1Panel目前没有提供HTTP的API接口或其他方式的接口,但这种需求是技术纯粹考虑上的一种执念,如果有的话更好,虽然大多数用户没有精力去研究这个。
总体而言,1Panel是一个很棒的面板,我很喜欢。但我对命令行和守护进程这一块的需求很大,如果这两个问题解决了,那我以后可能就直接无脑安装1Panel了。