软件让生活触手可及

ByPanel - 新一代的Linux Web一键安装环境包

想必我们很多运维网站的朋友有安装过Oneinstack、LNMP、LAMP等一键Web安装包,相比宝塔面板的不同之处是前者无面板,这样占用资源相对少一些,而且安全性会更好一些。但是由于前面几个无面板的Linux一键包不更新或者被出售掉后,目前还没有一个好的环境替换。这里,看到原Oneinstack作者重新开发的ByPanel环境包正式版上线。

前几天老蒋有测试过这个脚本,但是有出现一些逻辑的问题。于是和作者Yeho商量着修复一下。目前已经是当前稍微合适的方式修改后,我重新帮助测试确实可以运行正常的,但是还是有一些逻辑需要调整后续优化。这里我较为详细的记录ByPanel一键包的安装记录。

MacOS RedHat Alpine Linux Debian Ubuntu
AlmaLinux Fedora Rocky Linux openSUSE Anolis
OpencloudOS TencentOS Amazon Linux EulerOS openEuler
Kylin LinuxMint Alibaba Linux Elementary Uos
Deepin KylinsecOS Oracle Linux Kali Linux Arch Linux
CentOS ...

我们看到支持的系统环境,我们正常安装系统后可以安装。建议不要安装太旧的版本,可以最新版本或者次新版本。

curl -sSL https://mirrors.linuxeye.com/bypanel/quick_install.sh | bash

执行命令安装。

这里我们仅仅是基础的配置,软件还没有安装。

bypanel configure

准备配置软件,记住这个命令,后面如果需要安装新的软件也还需要走一遍这个。

根据提示,我们可以设置安装流程是中文,默认是英文。有选择PHP模块,如果没有特殊的就默认。软件默认是Nginx、MYSQL、PHP83,当然如果我们需要安装的,也可以一起写到这里安装。在过程中我们可以看到填写数据库的版本,可以是Mariadb,和 MySQL数据库,根据自己需要设置版本,你不设置他就默认。

当然,最后还需要设置数据库的管理密码。我这里是故意没有安装phpmyadmin,我们如果有需要可以一次性安装需要的软件。

bypanel pull

这里我们用这个命令将设置的软件拉回来。

  bypanel up -d

这里我们创建和启动软件。

启动之后,我们在浏览器中输入服务器IP,可以看到默认成功安装的界面。

这样算是成功安装的。

还记得我开始故意没有安装phpmyadmin数据库管理软件么?

如果我们正式需要的话可以一并安装,我故意没有安装是为了演示后续如果需要安装增加其他软件如何操作。

这里我们再走一遍 bypanel configure 、bypanel pull 、bypanel up -d。看上图,我们需要将之前安装的软件和新安装的软件填写进来,这个逻辑目前稍微有点问题,希望yeho改进一下,毕竟有些朋友后续忘记自己安装的什么软件,以及忘记版本,那这里填写错了就比较麻烦,最好是新安装的就填写新的。

这样我们环境就安装完毕,那就要开始搭建网站。

举个例子看看我是如何添加网站的。具体用的命令用下面的。

添加

bypanel vhost add

删除

bypanel vhost del

列表

bypanel vhost list

重载web服务

bypanel reload

日志

bypanel logs -f

显示日志, 如显示nginx实时日志:bypanel logs nginx -f, 其中`-f`参数: 打印日志输出

服务状态

bypanel status

查看容器状态, 或执行命令 bypctl ps 作用相同

停止、删除容器和网络

bypanel down

重启服务

bypanel restart

启动服务

bypanel start

停止服务

bypanel stop

执行命令

bypanel exec SERVICE COMMAND [ARGS...]

如:登陆nginx容器

bypanel exec nginx sh

升级命令

bypanel upgrade

版本显示

bypanel version

具体系统配置的各个参数可以参考这里。

/opt/bypanel/.env

我们可以看这个文件,也可以手动修改。


    NEW_UID: 容器运行用户Id,网站根目录权限需为此用户Id,可通过chown -R 1000:1000 /data/webroot修改网站根目录权限
    NEW_GID: 容器运行用户组Id
    TIMEZONE: 容器时区
    NGINX_SERVER: Nginx镜像版本
    MYSQL_SERVER: MySQL镜像版本
    PGSQL_SERVER: PostgreSQL镜像版本
    REDIS_SERVER: Redis镜像版本
    MEMCACHED_SERVER: Memcached镜像版本
    MONGO_SERVER: MongoDB镜像版本
    PMA_SERVER: phpMyAdmin镜像版本
    PMA_ARBITRARY: phpMyAdmin参数,当设置为 1 时,将允许与任意服务器的连接
    PMA_ABSOLUTE_URI: phpMyAdmin参数,phpMyAdmin的完整 URL。 有时在反向代理配置中使用时需要。
    SFTPGO_SERVER: SFTPGo镜像版本
    SFTPGO_WEB_PORT: SFTPGo web管理端口,创建第一个管理员和一个新的 SFTPGo 用户,注意安全组端口
    SFTPGO_SFTPD_PORT: SFTP服务端口,注意安全组端口
    SFTPGO_FTPD_PORT: FTP服务端口,注意安全组端口
    SFTPGO_FTPD_PASSIVE_PORT_RANGE_START: FTP服务被动开始的端口,注意安全组端口
    SFTPGO_FTPD_PASSIVE_PORT_RANGE_END: FTP服务被动结束的端口,注意安全组端口
    PHP_MODULES_ENABLE: PHP启用模块
    PHP_MODULES_DISABLE: PHP禁用模块
    HOST_PORT_NGINX: Nginx端口
    HOST_PORT_NGINX_SSL: Nginx SSL端口
    HOST_PORT_OPENRESTY: OpenResty端口
    HOST_PORT_OPENRESTY_SSL: OpenResty SSL端口
    HOST_PORT_APACHE: Apache端口
    HOST_PORT_APACHE_SSL: Apache SSL端口
    MYSQL_ROOT_PASSWORD: MySQL数据库root密码
    HOST_PORT_MYSQL: MySQL端口
    PGSQL_ROOT_USER: PostgreSQL根用户
    PGSQL_ROOT_PASSWORD: PostgreSQL根用户密码
    PGSQL_HOST_AUTH_METHOD: 为了不使用 PostgreSQL 的密码,请将此值保留为"trust"
    HOST_PORT_PGSQL: PostgreSQL端口
    HOST_PORT_REDIS: Redis端口
    REDIS_ARGS: Redis启动参数
    HOST_PORT_MEMCACHED: Memcached端口
    HOST_PORT_MONGO: MongoDB端口

对应的解释。

这样,我们如果有需要无面板的Linux web安装包,是不是又有新的可选了?我们也希望yeho后续持续的维护。相比之前的oneinstack确实优秀很多,安装效率提高不少。

投上你的一票
转载保留:老部落 » ByPanel - 新一代的Linux Web一键安装环境包