内网环境下1Panel面板离线部署与Web服务实践
本人是某老绿板的老忠实用户(其实是身处开发不太擅长运维哈哈),在一些需要运维Linux服务器部署网站、服务的时候,经常会遇到无外网的环境,这个时候老绿就G了。
一、老绿板的弊端
先说说弊端:
- 默认不提供离线部署包,需要填报申请(视你为客户线索,你懂的);
- 闭源;
- 强制注册(绑定手机)。
以前觉得还好,毕竟老牌面板了,但是你都免费了,不给离线部署……我哭死……
二、1Panel的初体验
后来,了解到1panel这个面板,整体美观,开源、免费、官网直接提供离线包。
官网:https://1panel.cn/
离线安装:离线包安装 - 1Panel 文档
跟着文档下载离线包、在内网机器上安装一气呵成。
三、内网环境下的功能瓶颈
访问1panel管理控制台Web页,识别到一些问题:
1. 应用商店无法使用
应用商店因为离线状态无法查看应用,也没法更新应用列表信息,没有导入应用功能。
2. Docker镜像拉取限制
1panel的应用基于预设好的配置模板和对应的Docker镜像包实现的快速部署,和老绿板的原生脚本化安装应用不一样,这样的好处就是比较干净,不会污染系统环境,但是也没法拉取docker镜像。
3. 镜像与应用映射缺失
单独导入应用上线对应的docker镜像也会有问题,就是没有和1panel应用商店的映射关系,也就无法被1panel自动识别装配成对应的菜单级功能,比如:网站、数据库,特别是网站,我相信这个功能也是大多数人装面板的一个重要需求,快速运维Web网站,比如静态Web、转发代理、运行服务等。
四、离线环境下的解决方案:快照备份恢复
没有外网,也不能拉取商店的openresty应用,就不能使用【网站】功能,那这样子,对于很多站长来说,就没使用的价值了。
经过摸索和请教到了关键的Mr.Wang大侠,找到了可以解决场景的办法,就是内置的备份功能了。
具体操作步骤
1. 公网机器预配置
- 准备一台公网Linux机器进行1panel部署。
- 在公网1panel,将OpenResty安装配置好。
2. 创建系统快照
- 找到左侧【面板设置】-【快照】-【创建快照】,将公网1panel进行快照备份,这里选项都默认选就可以了。
- 等待备份完毕。
- 进入文件管理,手动下载快照文件,目录地址:
/opt/1panel/backup/system_snapshot
。
3. 内网机器恢复快照
- 进入内网机器1panel,进入文件管理,手动上传快照文件,目录地址也是
/opt/1panel/backup/system_snapshot
。
- 找到左侧【面板设置】-【快照】-【同步快照】,将公网1panel快照进行识别。
- 识别好后,将选择公网1panel快照记录右侧操作列点击【恢复】。
- 恢复完后,回到应用商店,发现应用恢复了,但是状态异常,我们这时候点击重建应用就可以了。
- 重建速度很快就几秒,结束后我们回到【网站】页面,发现功能正常了就。
五、补充说明
网上之前也有一些别的帖子,比如这个老哥提的问题:
还有这个老哥的解决办法:
https://mayx.eu.org/2024/02/03/1panel#离线安装1panel中应用的方法
试了大概就是手动导入Docker镜像和修改1panel的数据库对应用数据表的映射关系,但是整体来说,推荐大家用快照功能,比如说你都多台机器,部署内网Web服务为主做站群、负载等,那可以对一台应用节点的机器配好所需的应用,将快照导出后,多台机器进行快照恢复即可(虽然也是一种办法,但可能有大佬有更好的工具和思路,运维菜鸡求勿喷)。