当前位置: 首页 > article >正文

纯内网环境安装1Panel面板与商店应用

文章目录

    • 前序
    • 准备
    • 开始
    • 联网机器配置
      • 1Panel配置
      • 安装所有离线需要的应用
      • 导出Docker镜像
      • 导出1Panel配置
    • 离线机器配置
      • 安装1Panel
      • 覆盖配置
      • 导入容器镜像
      • 重建应用
    • 关于Jar包的运行

前序

之前一篇文章讲解了如何在内网环境下安装1Panel并操作商店应用安装应用程序,但是在一些路由禁止的环境,存在很多限制,包括应用安装时不会主动在apps文件夹创建docker配置文件,导致安装会直接报错,无法通过重建方式进行正确安装,这篇文章主要解决这些问题
此文章也是用另一种方式建立离线版本1Panel,与上一篇文章存在很大的不同

  • 覆盖所有1Panel配置
  • 仅重建应用

穿越上一篇文章~,部分配置在本文不做教程,请优先参考此文章
离线安装1Panel与商店应用,支持1Panel管理

准备

依然是两台机器,保持系统架构一致即可[尽量保持同系统版本]
一台联网机器 用于获取正常的应用与数据库资源
一台纯内网机器 用于覆盖联网配置

本文测试架构:
1Panel版本:社区版 v1.10.23-lts
联网机器:CentOS 7.9.2009 x86_64
内网机器:Ubuntu 2204 LTS x86_64
1Panel安装位置:/opt/1panel

离线安装包及官方文档:离线包安装

开始

PS: 请先准备好1Panel离线安装包,于联网机器安装好1Panel,并确保安装离线机器时版本一致,因1Panel更新周期较快,版本差异可能影响数据一致性

联网机器配置

1Panel配置

按照正常步骤进行安装即可。
1Panel在安装中请选择一个比较容易记住的后缀、账户密码与端口,因为离线机器后期会覆盖保持一致。

安装所有离线需要的应用

在联网机器中安装好所有离线环境需要的应用,如:OpenResty、MySQL、Redis、PHP、Java等常用应用与环境

当然,为确保后期维保需要备用也可以多安装一些常用应用,如Adminer等数据库管理工具

全部安装完成之后,不需要进行配置,确保都正常即可
特别是PHP等需要安装拓展的环境,必须先将所有需要的拓展安装好,不然后期离线环境再更改会很麻烦,需要修改数据库。

导出Docker镜像

在线1Panel环境操作
将你安装好的所有环境在这台服务器上导出
进入容器-镜像,将所有安装的环境点击导出
在这里插入图片描述
在这里插入图片描述
全部导出后下载保存tar镜像文件,后续离线环境需要导入

导出1Panel配置

准备工作是否结束?开始导出所有1Panel配置!

进入文件-1Panel安装目录-压缩整个1Panel安装文件夹为tar.gz格式,修改一下名字哦~
在这里插入图片描述
在这里插入图片描述
压缩完成之后下载保存

此时对于联网机器的操作已经结束!

离线机器配置

本文对联网机器的配置,是否已经想到下一步了?没错,1Panel就是这么方便,覆盖配置就行了~

1Panel离线安装包以及所有下载的文件拷贝到离线服务器

安装1Panel

与在线一致,1Panel在安装中后缀、账户密码与端口请尽量与联网环境保持一致。当然,不一致也可以,覆盖后会恢复的~
关于Docker的离线安装请移步:
Docker 手动安装请参考 Docker 官方文档
Compose 手动安装请参考 Compose 官方文档
或参考:Ubuntu离线安装Docker容器

覆盖配置

需要使用命令进行操作

  1. 将你从在线1Panel中下载的1Panel配置移动到离线1Panel的安装目录,如:/opt
cp 你上传的在线配置文件位置.tar.gz /opt

或在/opt重新上传也行

  1. 先备份1Panel原有配置
mkdir -p ./1panel_bak
cp -rf ./1panel/.[!.]* ./1panel/* ./1panel_bak/
  1. 解压你上传的tar.gz文件
tar -xzvf 1panel-backup.tar.gz

此时会出现1panel-backup文件夹

  1. 解压完成之后将所有文件复制到1Panel安装目录
cp -rf ./1panel-backup/.[!.]* ./1panel-backup/* ./1panel/
# 这里 .[!.]* 用于匹配隐藏文件
  1. 现在所有配置替换结束,重启1Panel
# 重启1panel
1pctl restart
# 查看1panel状态
1pctl status
# 获取 1Panel 用户信息
1pctl user-info

重启后1pctl status的状态为active (running)就代表重启成功

导入容器镜像

以下为进入面板操作

离线1Panel配置完成后,进入面板,进入容器-镜像,点击导入镜像,选择你上传的镜像文件,点击导入
依次将所有的镜像都导入完成
如果你在线配置时安装了一些暂时不需要的应用,这些容器镜像可以不进行导入,后期需要时再导入即可,不要删除该应用哦,回不来的~
在这里插入图片描述

重建应用

当容器导入结束之后,进入应用商店-已安装,此时所有的应用都应该是失败状态,此时点击重建即可正常运行

如果你的在离线1Panel环境安装位置并不一致,你需要通过重建失败后的提示进入apps进行配置文件的路径修改

PS:运行环境列表不要动!当镜像导入之后就可以正常使用,如果变为失败状态就需要修改数据库

此时你就可以正常使用离线1Panel环境了

关于Jar包的运行

如果你需要运行Jar包,你需要自行创建容器选择java镜像,开放你需要的端口,选择host网络,也就是本机的网络,端口不可复用
如果你需要使用外置的yaml/yml配置文件,你需要单独在Command指定,容器内无法加载默认的config文件夹
如果需要挂载本地地址,按照需要挂载即可
资源文件等重要资源必须挂载到本机,否则编辑后会清除!
除了jar包等运行文件之外,其它资源一定要挂载到本机!

在这里插入图片描述
在这里插入图片描述

此时运行就能正常通过端口访问了~
如果还存在问题,可以通过右侧的日志进行问题排查

相关文章:

纯内网环境安装1Panel面板与商店应用

文章目录 前序准备开始联网机器配置1Panel配置安装所有离线需要的应用导出Docker镜像导出1Panel配置 离线机器配置安装1Panel覆盖配置导入容器镜像重建应用 关于Jar包的运行 前序 之前一篇文章讲解了如何在内网环境下安装1Panel并操作商店应用安装应用程序,但是在一…...

软件工程面试题(三)

1.简单介绍下java?Spring的AOP,IOC的讲述 对struts2的了解,1,2的比较 xml的了解 J2ee的webserviced的协议? Spring AOP:代理机制 Spring提供的自动代理机制 Spring的IoC来实组件之间的依赖关系注入, 使控制层及…...

【 C++】构造函数和成员函数

详细探讨 C 中的构造函数和成员函数(方法),并通过代码示例进行说明。 1. 构造函数 (Constructors) 目的: 构造函数是一种特殊的成员函数,其主要目的是在创建对象时初始化对象的数据成员。名称: 构造函数的…...

OpenCV计算摄影学(22)将输入的彩色图像转换为两种风格的铅笔素描效果函数pencilSketch()

操作系统:ubuntu22.04 OpenCV版本:OpenCV4.9 IDE:Visual Studio Code 编程语言:C11 算法描述 铅笔风格非写实线描图。 该函数通过图像处理技术将输入的彩色图像转换为两种风格的铅笔素描效果: dst1:炭笔效果的灰度图…...

Event driven agentic document workflows 笔记 - 1

1. 课程介绍 主题:与 LlamaIndex 合作构建的事件驱动代理文档工作流讲师:Laurie Voss(LlamaIndex 开发者关系副总裁) 2. 代理文档工作流简介 定义:基于代理的应用程序,用于自动化端到端文档处理工作流。…...

影响单模光纤耦合效率的分析

影响单模光纤耦合效率的因素 如果想使单模光纤的耦合效率最高,入射光束需要满足以下条件: (1)入射光束接近高斯光; (2)入射光束从光纤端面正入射; (3)入射…...

windows+ragflow+deepseek实战之一excel表查询

ragflows平台部署参考文章 Win10系统Docker+DeepSeek+ragflow搭建本地知识库 ragflow通过python实现参考这篇文章 ragflow通过python实现 文章目录 背景效果1、准备数据2、创建知识库3、上传数据并解析4、新建聊天助理5、测试会话背景 前面已经基于Win10系统Docker+DeepSeek+…...

从“不敢买大”到“按墙选屏”,海信电视如何凭百吋重构客厅?

电视买小了,成为茜茜新房入住后最大的遗憾。 新房装修的时候,茜茜担心电视买大了眼睛看着累,因此把尺寸选在了65吋。结果入住后,孩子看动画片嚷着“画面太小”,老公看球赛吐槽“看不清球员号码”,全家追剧…...

ABAP 长文本编辑器

加个屏幕 *&---------------------------------------------------------------------* *& Report YDEMO2 *&---------------------------------------------------------------------* *& *&---------------------------------------------------------…...

【K8S】ImagePullBackOff状态问题排查。

ImagePullBackOff 是在使用 Kubernetes(K8s)时经常遇到的一种错误状态,下面为你详细介绍其含义、可能的原因及解决办法。 含义 当你在 K8s 集群中创建一个 Pod 时,Kubelet 会尝试从指定的镜像仓库拉取所需的容器镜像。如果拉取镜…...

Logstash 使用指南

Logstash 是一个开源的数据收集引擎,能够从多种数据源收集数据,进行转换和过滤,并将数据发送到指定的目的地(如 Elasticsearch、文件、数据库等)。它是 Elastic Stack(ELK Stack)的重要组成部分…...

Python 位运算符大全

在 Python 中,位运算符用于对整数进行位级别的操作。位运算符直接操作二进制位,适用于处理二进制数据、位掩码、权限控制等场景。Python 提供了多种位运算符,包括按位与、按位或、按位异或、按位取反、左移和右移等。 1. 常见的位运算符 运算符描述示例&按位与a & b…...

MATLAB 调用arduino uno

为了授课,必须重新把arduino用上。 采用MATLAB编码,可以简化相关程序授课部分 1 安装包 MATLAB Support Package for Arduino Hardware - File Exchange - MATLAB Central (mathworks.com) 需要这个插件。 当然也可下载simulink的模块,但…...

Git——分布式版本控制工具使用教程

本文主要介绍两种版本控制工具——SVN和Git的概念,接着会讲到Git的安装,Git常用的命令,以及怎么在Vscode中使用Git。帮助新手小白快速上手Git。如果想直接上手用Vscode操作远程仓库则直接看7和9即可! 目录 1. SVN和Git介绍 1.1 …...

HarmonyOS 开发中条件渲染的选择:if/else 与取反操作的对比与实践

在HarmonyOS开发里,if/else 条件渲染和取反操作(常借助三元运算符)都能根据不同情况设置组件属性值。下面从多个维度分析如何选择,以及各自的利弊,并附上代码示例。 选择方法 简单二元条件:当条件只有两种…...

【数据分析】数据筛选与访问行列元素3

访问元素 .loc属性可以通过传入index的值访问行数据。 .loc属性允许传入两个参数,分别是index的值和columns的值,参数间用“逗号”隔开,这样便可以访问数据中的元素。 1. 访问单个元素 访问单个元素比较简单,只需要通过它的in…...

前沿技术一览科技改变生活新趋势

虚拟现实技术最近在教育里变得特别火。它能让人感觉像是真的到了另一个地方。比如学生戴上VR眼镜,就能“走进”历史事件的发生地或者深入细胞内部去了解生命科学。 这种学习方法能让知识更生动。学生不再只是看书听讲,而是可以亲手体验。比如在学习地理…...

Python连接数据库进行增删改查

更多优质文章 _>_>_>_>_>✍✈✉戳我 目录 1.导入相关库 2.创建连接 3.插入数据 4.删除数据 5.修改数据 6.查询数据 7.更多干货 1.导入相关库 import pymysql -----pip install pymysql #下载库 2.创建连接 conn pymysql.connect(hostlocalho…...

爬虫——playwright获取亚马逊数据

目录 playwright简介使用playwright初窥亚马逊安装playwright打开亚马逊页面 搞数据搜索修改bug数据获取翻页优化结构 简单保存 playwright简介 playwright是微软新出的一个测试工具,与selenium类似,不过与selenium比起来还是有其自身的优势的&#xff…...

大数据学习(77)-Hive详解

🍋🍋大数据学习🍋🍋 🔥系列专栏: 👑哲学语录: 用力所能及,改变世界。 💖如果觉得博主的文章还不错的话,请点赞👍收藏⭐️留言📝支持一…...

回调方法传值汇总

<template v-slot"scope"><el-switch v-model"scope.row.open" change"(p1) > changeOpen(p1, scope.row)"></el-switch></template>公域流量 多选 selection-change“val > multipleSelection val”...

汽车一键启动PKE无钥匙系统

移动管家汽车一键启动PKE舒适无钥匙遥控远程系统是一种集成了多项先进功能的汽车电子系统&#xff0c;主要目的是提高驾驶便利性和安全性。 以下是该系统的具体功能&#xff1a; 功能类别 功能描述 无钥匙进入 感应无钥匙进入&#xff08;自动感应开关门&#xff09; 一…...

Postman 新手入门指南:从零开始掌握 API 测试

Postman 新手入门指南&#xff1a;从零开始掌握 API 测试 一、Postman 是什么&#xff1f; Postman 是一款功能强大的 API 开发与测试工具&#xff0c;支持 HTTP 请求调试、自动化测试、团队协作等功能。无论是开发人员还是测试工程师&#xff0c;都可以用它快速验证接口的正确…...

猿大师中间件:如何在最新Chrome浏览器Web网页内嵌本地OCX控件?

OCX控件是ActiveX控件的一种&#xff0c;主要用于在网页中嵌入复杂的功能&#xff0c;如图形渲染、多媒体播放等&#xff0c;可是随着谷歌Chrome等主流浏览器升级&#xff0c;目前已经不支持微软调用ActiveX控件了&#xff0c;如果想调用OCX控件用IE浏览器或者国产双擎浏览器&a…...

[数据结构]排序之 归并排序(有详细的递归图解)

一、非递归 基本思想&#xff1a; 归并排序&#xff08; MERGE-SORT &#xff09;是建立在归并操作上的一种有效的排序算法 , 该算法是采用分治法&#xff08; Divide andConquer&#xff09;的一个非常典型的应用。将已有序的子序列合并&#xff0c;得到完全有序的序列&#x…...

构建第二个Django的应用程序

构建第二个应用程序 文章目录 构建第二个应用程序1.打开Visual Studio code 左上角 点击fike 点击open folder2.打开上次的Django项目 并按图示点击进入终端3.在下方终端输入创建app01项目的命令 接着在左上方会出现一个app01的项目4.接着在Hellodjango的项目里settings.py中定…...

axios 请求拦截器和 响应拦截器总结

请求拦截器 和 响应拦截器 是 axios 提供的强大功能&#xff0c;用于在请求发送前和响应返回后统一处理某些逻辑。它们的作用和具体用法如下&#xff1a; 1. 请求拦截器 作用 在请求发送之前&#xff0c;对请求配置进行统一处理。例如&#xff1a; 添加请求头&#xff08;如…...

图像分割的mask有空洞怎么修补

分享一个对实例分割mask修补的方法&#xff0c;希望对大家有所帮助。 1. 这是我准备分割的图片 2 分割结果 可以看到衣服部分有一些没分割出来&#xff0c;二值化图片能清晰看到衣服部分有些黑色未分出的地方。 3 补全mask区域 import cv2 import numpy as npdef fill_mask_h…...

HarmonyOS NEXT 组件状态管理的对比

在HarmonyOS NEXT开发中&#xff0c;组件状态管理是构建动态用户界面的核心。本文将深入探讨State、Prop、Link和ObjectLink这四种常见的状态管理装饰器&#xff0c;并通过示例代码进行对比分析&#xff0c;以帮助同学们更好地理解和选择合适的状态管理方式。 一、装饰器概述 …...

C#通过API接口返回流式响应内容---SignalR方式

1、背景 在上两篇《C#通过API接口返回流式响应内容—分块编码方式》和《C#通过API接口返回流式响应内容—SSE方式》实现了流式响应的内容。 上面的这两个主要是通过HTTP的一些功能&#xff0c;除了这些之外&#xff0c;还有WebSocket的方式。C#中的WebSocket的有比较多的方案&…...