『香橙派』基于Orange Pi AIpro打造高效个人云存储解决方案


📣读完这篇文章里你能收获到

  • 了解Orange Pi AIpro硬件优势,为构建高效云存储基础设施的理想平台。
  • 学会使用Orange Pi AIpro硬件平台,搭载Ubuntu Server系统,打造云存储环境。
  • 掌握利用Kodbox软件,享受文件管理、多格式预览及编辑的全方位云服务体验。
  • 一键部署Kodbox,实现服务容器化,提升系统稳定性和安全性。
  • 通过花生壳内网穿透,无论身处何地,都能轻松访问家中搭建的私有云盘。

文章目录

  • 一、引言
    • 1.1 整体技术架构概览
    • 1.2 Orange Pi AIpro简介
      • 1.2.1 昇腾AI技术
      • 1.2.2 高性能硬件配置
      • 1.2.3 海量数据存储空间
    • 1.3 Kodbox简介
      • 1.3.1 核心功能
      • 1.3.2 协作与分享
  • 二、准备工作
    • 2.1 Orange Pi AIpro开箱与基础设置
    • 2.2 在Orange Pi AIpro上安装Ubuntu
    • 2.3 确保本地网络能联网
  • 三、Kodbox部署实战
    • 3.1 更新必要软件包
    • 3.2 Docker环境安装
    • 3.3 环境文件准备
    • 3.4 容器编排脚本编写
    • 3.5 启动服务
  • 四、玩转个人云盘
    • 4.1 系统登陆
    • 4.2 桌面管理
    • 4.3 文件管理
      • 4.3.2 视频播放
      • 4.3.1 外链分享
    • 4.4 后台管理
  • 五、内网穿透实战
    • 5.1 安装工具包
    • 5.2 安装花生壳phddns
    • 5.3 通过SN码登陆
    • 5.4 创建内网穿透映射
    • 5.5 通过外网访问
  • 六、总结
    • 6.1 开发者的友好性
    • 6.2 应用场景的广泛性
    • 6.3 操作与体验

一、引言

在数字化时代,个人数据的存储与管理成为了日常生活的关键一环。随着高清照片、视频文件的增多以及远程办公的普及,对可靠、便捷的个人云存储需求日益增长。面对市面上高昂的商业云存储服务费用,以及对数据隐私的担忧,越来越多的用户开始探索自建个人云存储的可能性。本项目旨在利用Orange Pi AIpro的强大硬件能力,结合Kodbox的成熟软件框架,打造出一个既安全又高效的个人网盘系统。

1.1 整体技术架构概览

资源组件功能
硬件平台Orange Pi AIpro利用其内置的昇腾AI技术、高性能硬件配置(8GB至16GB LPDDR4X内存、M.2接口支持等),为个人云存储提供物理基础
操作系统Ubuntu文中提到使用此操作系统作为基础软件环境,通过MicroSD卡安装,配置网络与系统基础设定
容器技术Docker用于轻量级、可移植的软件打包方案,以及Docker Compose,用于定义和运行多容器的分布式应用
云存储应用Kodbox这是一个开源的私有云存储软件,提供文件管理、多终端同步、在线预览编辑、项目协作、文件分享等功能,强调数据隐私和自定义能力
数据库MariaDB作为Kodbox后端数据存储的核心,通过Docker容器部署,配置了数据持久化、安全性和自动升级策略。
网络穿透工具花生壳Phddns用于实现内网穿透,使得外部网络可以访问到内部部署的服务,通过简单的SN码登录和配置即可创建外网访问映射

香橙派内网穿透.jpg

1.2 Orange Pi AIpro简介

1.2.1 昇腾AI技术

Orange Pi AIpro,作为业界首款基于昇腾深度研发的AI开发板,集创新设计、卓越性能与全面技术支持于一体,树立了AI开发领域的全新标杆。这款开发板深度融合昇腾AI技术,搭载高效能图形处理器,并配备8GB至16GB LPDDR4X内存,外加灵活的32GB至256GB eMMC扩展选项,展现了其强大的数据处理与存储能力。凭借8/20 TOPS的强大AI运算能力,Orange Pi AIpro轻松应对各类复杂计算需求。
image.png

1.2.2 高性能硬件配置

在物理接口配置上,Orange Pi AIpro展现出前所未有的灵活性与扩展潜力。它不仅拥有双路4K高清视频输出能力,还配备了多样化的端口:双HDMI接口、GPIO接口、Type-C供电接口、支持SATA/NVMe SSD的M.2插槽、TF卡插槽、千兆以太网接口、双USB 3.0、USB Type-C 3.0、Micro USB接口,以及专为摄像头和显示屏设计的MIPI接口,还预留了电池连接口,极大地方便了开发者进行多样化项目部署。
image.png

1.2.3 海量数据存储空间

Orange Pi AIpro更进一步集成了先进的M.2接口,全面支持SATA及NVMe协议的SSD 2280规格固态硬盘,这一设计极大地拓宽了存储解决方案的可能性。通过接入高速SSD,用户不仅能够享受到TB级的海量数据存储空间,还确保了数据的快速读写访问能力,这对于需要处理大规模数据集的云计算应用、边缘计算场景及高清多媒体内容创作而言,无疑是至关重要的加速器。它不仅提升了系统响应速度,也优Q化了大数据处理和存储效率,从而将Orange Pi AIpro塑造成为构建高效云存储基础设施的理想平台。
image.png

1.3 Kodbox简介

Kodbox,作为一个成熟且开源的私有云存储解决方案,提供了文件管理、多终端同步、在线预览与编辑等一系列功能,旨在帮助用户轻松建立自己的私有云存储服务。它不仅支持高度自定义,还强调数据隐私保护,让用户的数据掌握在自己手中,而非第三方云服务商。对于追求数据自主控制权和灵活性的技术爱好者而言,可道云无疑是构建个人网盘的优选工具。

1.3.1 核心功能

  • 文件操作:支持新建、删除、复制、移动、粘贴和上传下载等操作,与本地文件管理无异。
  • 快捷键支持:用户可以根据需要自定义文件排序、视图和分类等快捷键设置。
  • 多格式预览:支持数百种常见格式的文档预览,包括图片、音乐、视频、Office文档、PDF、OFD、XPS、PhotoShop、Illustrator文件等,无需下载或安装额外软件。

image.png

1.3.2 协作与分享

  • 项目协作:快速发起项目协作,向系统内成员或部门分配不同权限。
  • 文档讨论:基于文件或文件夹发起交流讨论,提高协作效率。
  • 文件动态:提供文档所有事件流的记录,清晰展示文档生命周期。
  • 历史版本:自动生成文件的历史版本,并支持预览回溯和备注。

image.png

二、准备工作

2.1 Orange Pi AIpro开箱与基础设置

在正式开始之前,首先需要对Orange Pi AIpro进行开箱检查,确保所有配件齐全,包括主板、电源适配器、MicroSD卡、HDMI线(如果计划连接显示器)、USB键盘和鼠标等。
image.png
接下来,遵循以下步骤进行基础设置:

  1. MicroSD卡准备:使用SD卡读卡器,将Ubuntu镜像写入MicroSD卡中。推荐使用官方工具完成镜像烧录过程,以确保操作的简便性。
  2. 连接硬件:将MicroSD卡插入Orange Pi AIpro的相应插槽,连接电源适配器、HDMI线(如果需要直接查看启动过程),以及USB键盘和鼠标。
  3. 首次启动:按下电源键启动设备,如果连接了显示器,你将看到Ubuntu的安装界面或直接进入系统(取决于你的SD卡是否已预装系统并设置了自动启动),由于我拿到的板子已经烧录好了系统,因此直接上电即自动开机。

1716297767340.png

2.2 在Orange Pi AIpro上安装Ubuntu

默认登陆密码:Mind@123

若SD卡未预装系统,你需要通过显示器和键盘执行Ubuntu的安装程序。按照屏幕提示,选择语言、设置网络、分配硬盘空间、设置用户名和密码等步骤完成安装。

2.3 确保本地网络能联网

  • 连接wifi,点击右上角的wifi按钮,选择wifi并输入密码

image.png

  • 测试网络连接:使用ping命令测试与外部网络的连通性,如ping baidu.com,确保网络配置正确无误。

Screenshot_2024-05-22_23-54-14.png

三、Kodbox部署实战

Kodbox开源地址:https://github.com/kalcaddle/kodbox

3.1 更新必要软件包

首先,更新系统软件包列表和系统内核,以获取最新的安全更新和补丁:

sudo apt update
sudo apt upgrade -y

3.2 Docker环境安装

  • 安装并启动docker服务, 新版本docker会自动安装docker-compose-plugin
 sudo curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
 sudo systemctl enable docker 
 sudo systemctl start docker

提示:
若docker compose命令不存在,可手动安装二进制文件docker-compose并在后续命令中替换。

  • curl -SL https://github.com/docker/compose/releases/download/v2.23.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
  • chmod +x /usr/local/bin/docker-compose

3.3 环境文件准备

注意:首先创建一个目录作为项目目录,后面所有命令都在这个目录下执行

  • 需在db.env中设置数据库密码,还有yml中的MYSQL_ROOT_PASSWORD需补充.
sudo mkdir -p /data/kodbox
cd /data/kodbox
  • 创建文件来设置数据库环境变量
sudo vim db.env
MYSQL_PASSWORD=kodbox123456
MYSQL_DATABASE=kodbox
MYSQL_USER=kodbox

3.4 容器编排脚本编写

创建docker-compose.yml 文件,在其中配置映射端口、持久化目录

sudo vim docker-compose.yml
version: '3.5'

services:
  db:
    image: mariadb:10.6
    restart: always
    command: --transaction-isolation=READ-COMMITTED --log-bin=binlog --binlog-format=ROW
    volumes:
      - "./db:/var/lib/mysql"       #./db是数据库持久化目录,可以修改
      # - "./etc/mysql/conf.d:/etc/mysql/conf.d"       #增加自定义mysql配置
    environment:
      - MYSQL_ROOT_PASSWORD=kodbox123456
      - MARIADB_AUTO_UPGRADE=1
      - MARIADB_DISABLE_UPGRADE_BACKUP=1
    env_file:
      - db.env
      
  app:
    image: kodcloud/kodbox
    restart: always
    ports:
      - 9980:80                       #左边9980是使用端口,可以修改
    volumes:
      - "./site:/var/www/html"      #./site是站点目录位置,可以修改
    environment:
      - MYSQL_HOST=db
      - REDIS_HOST=redis
    env_file:
      - db.env
    depends_on:
      - db
      - redis

  redis:
    image: redis:alpine
    restart: always

3.5 启动服务

进入项目目录,执行docker compose up -d启动命令,会自动拉取容器并运行

sudo docker compose up -d

Screenshot_2024-05-22_23-53-01.png

四、玩转个人云盘

4.1 系统登陆

  • 登陆地址:ip:9980
  • 可开放多个登陆账号,设置不同的角色权限

在这里插入图片描述

Screenshot_2024-05-23_00-02-57.png

4.2 桌面管理

  • 点击右边侧边栏的“桌面”进入

image.png

4.3 文件管理

  • 支持托拉直接上传文件
  • 支持多格式的文件在线预览编辑

image.png
image.png

4.3.2 视频播放

Screenshot_2024-05-23_00-20-29.png

4.3.1 外链分享

image.png

4.4 后台管理

image.png
image.png

五、内网穿透实战

5.1 安装工具包

sudo -s
apt install net-tools wget

5.2 安装花生壳phddns

  • 下载地址:https://hsk.oray.com/download
  • 配置教程:https://service.oray.com/question/11630.html
  • 选择Rasberry PI 64位的,该平台兼容Orange PI
# 1. 下载包
wget "https://dl.oray.com/hsk/linux/phddns_5.1.0_rapi_aarch64.deb" -O phddns_5.1.0_rapi_aarch64.deb

# 2. 运行  	
phddns_5.1.0_rapi_aarch64.deb

image.png
image.png

5.3 通过SN码登陆

  • 香橙派中的花生壳安装完成后,先复制生成的SN码。然后在浏览器中访问远程管理地址http://b.oray.com ,在登录页面中输入SN码与默认密码(admin)登录。
  • 账号密码->SN码登陆

image.png

5.4 创建内网穿透映射

注意:网站应用映射HTTP需付费6元

  • 添加内网穿透映射时,点击页面上的“增加映射”按钮,随后选择网页应用。

image.png

  • 选择HTTP,填写内网主机,内网端口

image.png

5.5 通过外网访问

  • 通过该地址即可在外网访问运行在Orange Pi AIpro的Kodbox私有网盘了

image.png

六、总结

使用Orange Pi AIpro开发板搭建个人云存储系统后,我对这款开发板有了更为深刻的理解。Orange Pi AIpro不仅仅是一款硬件产品,将高性能硬件与软件创新巧妙融合,满足了现代个人和家庭对数据存储日益增长的需求。在体验过程中,我深刻感受到它在以下几方面的优势:

6.1 开发者的友好性

Orange Pi AIpro的高性能硬件配置,特别是其对eMMC模块的支持和M.2 SSD扩展性,大大简化了存储空间的扩展过程。这对于开发者而言,意味着可以根据实际需求灵活调整存储规模,无需受限于固定的硬件限制,开发自由度大幅提升。

6.2 应用场景的广泛性

无论是个人媒体库的建立、家庭相册备份,还是远程工作文档的同步存储,Orange Pi AIpro均能游刃有余。其双HDMI接口和丰富的GPIO、USB接口,为多媒体中心搭建、智能家庭系统集成提供了便利,展现了其在多样化场景中的应用潜力。

6.3 操作与体验

从开箱到基础设置,再到Kodbox的部署,每一步都设计得相当人性化。尽管涉及较多的命令行操作,但详细的指南使得整个过程变得不那么生硬,反而像是一次对Linux系统管理的深度探索。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/657436.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用vanna实现Text2SQL

这节一起用vanna来实现自然语言转SQL,之前的大模型一直停留在问答阶段,答案基本都是大模型提供的,至多是加点本地知识库,tet,pdf等文档,丰富大模型的内容,但是想要大模型与一些管理系统对接还是…

ESXI8.0虚拟机和主机之间进行粘贴复制

1:默认情况下新建一个虚拟机是无法和主机之间进行粘贴复制操作的,主要是为了安全。 2:可以参考下面的文档进行操作,操作成功也只能复制粘贴数据,而无法复制粘贴文件或文件夹 https://knowledge.broadcom.com/externa…

JavaSE:StringBuilder和StringBuffer类

1、引言 在上一篇文章中,我们理解了字符串的常用方法,细心的同学大概已经发现,不管是将字符串中的字符转变为大写或小写,或是完成字符串的替换,又或是去除空白字符等等,只要涉及到字符串的修改&#xff0c…

玩转STM32-I2C通信协议(详细-慢工出细活)

文章目录 一、I2C总线原理(掌握)1.1 硬件构成1.2 传输位1.3数据传输格式 二、STM32的I2C特性和结构三、STM32的I2C通信实现(硬件实现方式)3.1 I2C主模式 四、应用实例 一、I2C总线原理(掌握) 1.1 硬件构成…

软件测试经理工作日常随记【6】-利用python连接禅道数据库并自动统计bug数据到钉钉群

测试管理_利用python连接禅道数据库并统计bug数据到钉钉 这篇不多赘述,直接上代码文件。 另文章基础参考博文:参考博文 加以我自己的需求优化而成。 统计的前提 以下代码统计的前提是禅道的提bug流程应规范化 bug未解决不删除bug未关闭不删除 db_…

解读makefile中$(patsubst pattern,replacement,text)

在 Makefile 中,$(patsubst pattern,replacement,text) 是一个用于模式替换的函数,它可以将文本中符合指定模式的部分替换为指定的字符串。这个函数通常用于对文件名或路径进行模式匹配和替换,非常适合在 Makefile 中进行文件名的转换操作。 …

计算机毕业设计python+spark天气预测 天气可视化 天气大数据 空气质量检测 空气质量分析 气象大数据 气象分析 大数据毕业设计 大数据毕设

摘 要 近些年大数据人工智能等技术发展迅速,我国工业正努力从“制造”迈向“智造”实现新跨越。神经网络(NeuronNetwork)是一种计算模型,通过大量数据的学习,来发现数据之间的模式和规律,模仿人脑神经元的工作方式。随着算力的提…

【深度学习】Transformer梳理

零、前言 对于transformer,网上的教程使用记号、术语不一 。 最关键的一点,网上各种图的简化程度不一 (画个图怎么能这么偷懒) ,所以我打算自己手画一次图。 看到的最和善(但是不是那么靠谱,我…

使用 Spring HATEOAS 开发 REST 服务-浅显的理解

随笔,简单理解 一、restful是什么 1、第一层次(Level 0)的 Web 服务只是使用 HTTP 作为传输方式,实际上只是远程方法调用(RPC)的一种具体形式。 SOAP 和 XML-RPC 都属于此类 2、第二层次(Lev…

linux学习(六)

1.网络管理 (1)查看 ifconfig: root用户可以查看网卡状态, 普通用户: /sbin/ifconfig(需要加上命令的完整路径) (2)修改网络配置 通过命令修改网络配置 设置网卡的ip地址;禁用网卡和启用网卡了。 添加网关: (3)网络故障查询 ①ping 检测当前主机和目标主机是…

线段树例题

目录 1.Sequence 2.Peach Conference 3.Permutation Subsequence 1.Sequence 题目描述: Given an array a consisting of n integers, on which you are to perform m operations of two types. 1.Given two integers x,y, replace the number of index x with n…

Windows10(家庭版)中DockerDesktop(docker)的配置、安装、修改镜像源、使用

场景 Windows10中Docker的安装与遇到的那些坑: Windows10中Docker的安装与遇到的那些坑_在 docker.core.logging.httpclientexceptionintercept-CSDN博客 上面讲Docker Desktop在windows10非家庭版上的安装,如果是家庭版,则需要执行如下步骤。 注&am…

动态规划之买卖股票大集合

目录 引言 1.只能进行一次买卖股票(最多只能买一股股票) 2.可以进行多次股票买卖,且没有手续费(最多只能买一股股票) 3.可以进行多次股票买卖,但是有冷冻期,无手续费(最多只能买一…

Xunsearch:实现拼音搜索和中文分词功能

首先我们需要安装xunsearch扩展库,参考 1、设置分词器和拼音搜索功能 在创建Xunsearch对象后,可以设置相应的分词器和拼音搜索功能。以下代码示例演示了如何设置分词器和拼音搜索功能: $index $xunsearch->index; $index->setToken…

Cesium For Unity 在Unity中无法下载的问题

Unity 下载失败,提供百度网盘“com.cesium.unity-1.10.0.tgz”下载链接 链接:https://pan.baidu.com/s/1PybXQ8EvkRofOKD6rSN66g?pwd1234 提取码:1234 导入方法: 1.打开PackageManager;Window-PackageManager 2.在PackageMan…

Leetcode621. 任务调度器

Every day a Leetcode 题目来源:621. 任务调度器 类似题目:1953. 你可以工作的最大周数 解法1:贪心 本质上来说,我们需要构造一个尽量短的,相同元素间隔 > (n1) 的序列。 用一个数组 cnt 统计每个任务的次数。…

【论文阅读笔记】The Google File System

1 简介 Google File System (GFS) 是一个可扩展的分布式文件系统,专为快速增长的Google数据处理需求而设计。这篇论文发表于2003年,此前已在Google内部大规模应用。 GFS不仅追求性能、可伸缩性、可靠性和可用性等传统分布式文件系统的设计目标&#xf…

如何使用 Connector API 将数据提取到 Elasticsearch Serverless 中

作者:来自 Elastic Jedr Blaszyk Elasticsearch 支持一系列摄取方法。 其中之一是 Elastic Connectors,它将 SQL 数据库或 SharePoint Online 等外部数据源与 Elasticsearch 索引同步。 连接器对于在现有数据之上构建强大的搜索体验特别有用。 例如&…

新火种AI|警钟长鸣!教唆自杀,威胁人类,破坏生态,AI的“反攻”值得深思...

作者:小岩 编辑:彩云 在昨天的文章中,我们提到了谷歌的AI Overview竟然教唆情绪低迷的网友“从金门大桥跳下去”。很多人觉得,这只是AI 模型的一次错误判断,不会有人真的会因此而照做。但现实就是比小说电影中的桥段…

Linux shell编程学习笔记51: cat /proc/cpuinfo:查看CPU详细信息

0 前言 2024年的网络安全检查又开始了,对于使用基于Linux的国产电脑,我们可以编写一个脚本来收集系统的有关信息。对于中央处理器CPU比如,我们可以使用cat /proc/cpuinfo命令来收集中央处理器CPU的信息。 1. /proc/cpuinfo 保存了系统的cpu…