Runtipi - 开源个人家庭服务器管理工具
项目功能:家庭服务器管理
▎项目介绍:
一个开源的个人家庭服务器管理工具,旨在简化在单一服务器上管理和运行多个服务的过程。
它基于 Docker 构建,提供了一个简单的 Web 界面,用户可以通过该界面轻松添加和管理服务,而无需手动配置或处理复杂的网络设置
它可以通过简单的命令一键安装,快速上手;
内置应用商店,提供超过 200 个流行的自托管应用,用户可以一键安装和更新。
🌟 特性
- 一键安装:快速部署自托管应用,无需手动配置。
- 多应用支持:支持多种流行的自托管应用。
- 易于管理:通过直观的界面管理所有应用。
- 自动化更新:自动保持应用和依赖项的最新状态。
- 安全可靠:内置安全措施,保护你的数据和隐私。
🚀 快速开始
前提条件
- 一台运行 Linux 的服务器(推荐 Ubuntu 20.04 或更高版本)
- Docker 和 Docker Compose 已安装
系统要求
- 操作系统: Ubuntu 22.04+/CentOS 8+ (推荐使用干净环境)
- 内存: 最低2GB,建议4GB+
- 存储: 至少20GB可用空间
- 网络: 开放80/443端口
快速安装步骤
# 获取最新代码
git clone -b develop https://github.com/runtipi/runtipi.git
cd runtipi# 执行安装脚本(自动检测环境)
sudo ./scripts/install.sh### 安装步骤1. 克隆仓库:```bashgit clone https://github.com/runtipi/runtipi.gitcd runtipi
-
启动 Tipi:
docker-compose up -d
-
访问 Tipi 的 Web 界面:
http://你的服务器IP:3000
⚙️ 配置指南
🔧 配置文件
runtipi 支持通过 config.json
进行配置,文件位置一般在项目根目录。
示例配置:
{"project": {"name": "示例项目","template": "default"},"settings": {"author": "你的名字"}
}
高级配置
修改 config/runtipi.yaml
文件:
network:domain: yourdomain.com # 绑定自定义域名ssl: auto # 自动SSL证书
🧰 命令行工具
🎯 常用命令
命令 | 说明 |
---|---|
runtipi create <name> --template <template> | 创建新项目 |
runtipi run | 运行项目 |
runtipi --help | 查看帮助信息 |
runtipi build | 构建项目(如果支持) |
📜 命令参数
支持多种参数,以定制操作流程。
📦 模板管理
📁 内置模板
默认提供一些基础模板,可直接使用。
✨ 自定义模板
可以在项目或本地定义模板,格式如下:
runtipi create <name> --template <路径或名称>
🔍 参数说明
create <name>
:新建项目。--template <name|path>
:指定模板。run
:运行项目。build
:构建项目。--help
:显示帮助信息。
故障排查
✅ 确保Docker服务正常启动
✅ 检查防火墙规则(需开放80/443端口)
✅ 查看日志文件 /var/log/runtipi/install.log
📦 支持的应用
Tipi 支持多种自托管应用,包括但不限于:
- Nextcloud
- Jellyfin
- Bitwarden
- Home Assistant
- 更多…
应用管理接口
GET /api/v1/apps
👉 获取已安装应用列表
// 响应示例
{"data": [{"id": "nextcloud","status": "running","version": "24.0.3"}]
}
WebSocket 实时监控
const ws = new WebSocket('wss://yourserver/api/v1/ws');
ws.onmessage = (event) => {console.log('资源监控:', JSON.parse(event.data));
};
4️⃣ 安全策略(重要声明)
# 🔒 安全策略## 漏洞报告流程
1. 通过 security@runtipi.com 提交报告
2. 包含以下信息:- 受影响的版本号- 复现步骤说明- 相关日志片段## 安全更新承诺
- 重大漏洞:24小时内发布补丁
- 普通漏洞:72小时内修复
- 每月安全公告发布在官网博客
🎯 介绍
如何使用 runtipi 工具,包括基本命令和参数。
🛠 安装
# 使用 curl
curl -fsSL https://deno.land/x/runtipi/install.sh | sh# 或者使用 wget
wget -O- https://deno.land/x/runtipi/install.sh | sh
🚀 创建项目
runtipi create <项目名称> --template <模板名称>
参数
<项目名称>
:新项目的目录名。--template
:选择模板(默认是default
)。
🖥 运行项目
runtipi run
📝 查看帮助
runtipi --help
❓ 常见问题
1. 如何安装 runtipi?
答:使用以下命令安装:
curl -fsSL https://deno.land/x/runtipi/install.sh | sh
2. 如何创建新项目?
答:运行:
runtipi create <项目名> --template <模板名>
3. 支持哪些模板?
答:当前支持默认模板,也可以自定义模板。
4. 遇到问题怎么办?
答:请提交 Issue 或在社区中寻求帮助。
5、每日资源 在这里
💯 👉【我的更新汇总】
👉项目直达
关注我的CSDN博客
更多资源可以查看我的CSDN博客
相关文章:

Runtipi - 开源个人家庭服务器管理工具
项目功能:家庭服务器管理 ▎项目介绍: 一个开源的个人家庭服务器管理工具,旨在简化在单一服务器上管理和运行多个服务的过程。 它基于 Docker 构建,提供了一个简单的 Web 界面,用户可以通过该界面轻松添加和管理服务…...
Vue3和React中插件化设计思想
Vue 3 和 React 都广泛支持插件化设计思想,但因为它们的架构和理念不同,插件化的实现方式也不尽相同。以下分别详细讲解这两者中如何实现插件化: 🟩 一、Vue 3 中的插件化实现 Vue 3 继承了 Vue 2 的插件机制,同时增强…...
基于ResNet的医学影像辅助诊断系统
源码下载地址: https://download.csdn.net/download/shangjg03/90873910 1. 简介 医学影像辅助诊断系统是利用计算机视觉和深度学习技术,帮助医生分析医学影像(如X光、CT、MRI等)并提供诊断建议的系统。本教程将开发一个基于ResNet的胸部X光肺炎检测系统。 2. 准备工作...

HJ106 字符逆序【牛客网】
文章目录 零、原题链接一、题目描述二、测试用例三、解题思路四、参考代码 零、原题链接 HJ106 字符逆序 一、题目描述 二、测试用例 三、解题思路 基本思路: 考虑到可能会有多个空格,使用使用 getline 函数直接读取一行。 如果可以直接打印的…...

力扣HOT100之二叉树: 236. 二叉树的最近公共祖先
果然,这道题二刷还是不会做,回去看卡尔视频了。结合灵神的题解,我对这道题有了一些新的理解。 首先这道题还是用递归来做,由于我们需要计算两个节点的最近公共祖先,一定是从下往上来遍历,只有先判断左右子树…...

腾讯音乐一面
1、自我介绍项目(省略) 2、为什么存储要从TiDB迁移到Mysql? TiDB 迁移至 MySQL 核心原因总结: 成本优化 TiDB 需多节点集群(PD/TiKV/TiDB Server),硬件、运维及学习成本高。中小业务(…...
【PhysUnits】4.4 零类型(Z0)及其算术运算(zero.rs)
一、源码 该代码定义了一个类型系统中的零类型Z0,并为其实现了基本的算术运算(加法、减法、乘法、除法)。这是一个典型的类型级编程示例,使用Rust的类型系统在编译期进行数学运算。 //! 零类型(Z0)及其算术运算实现 //! //! 本…...

Pluto实验报告——基于2ASK的简易的通信系统
一、实验目的 1. 熟悉并掌握PLUTO SDR 主动学习模块的使用; 2.通过matlab 编码与adalm pluto 相配合达成一个简易的通信系统,并能 够传输一些较为简单的信息。 二、实验原理 2ASK 调制原理: 振幅键控是指利用载波的振幅变化来传递数字基带信…...
Python排序函数全面指南:从基础到高级
文章目录 Python排序函数全面指南:从基础到高级1. 两种主要排序方式2. 基本参数详解2.1 key参数:自定义排序规则2.2 reverse参数:控制排序方向 3. 高级排序技巧3.1 多级排序3.2 稳定排序 4. 性能考虑5. 特殊排序场景5.1 对自定义对象排序5.2 …...

深入了解redis的哈希槽的知识
目录 1、哈希算法分类 1.1、简单哈希算法 1.2、一致性哈希算法 1、原理: 2、解决问题 3、数据倾斜问题 4、虚拟节点 2. 哈希槽 2.1、介绍 2. 2、作用 1、数据分片(Sharding) 2、高可用性(HA) 3…...

农业机械化、电气化和自动化知网英文普刊:1天录用,2周见刊发表!
CSP科学出版社,旨在通过为研究人员提供最佳环境来发表、参考、阅读和引用他们的作品,从而为科学界服务。现已与科检易学术达成出版战略合作,现在联合共同出版高质量学术水平的期刊,为方便广大科研学者投稿方便,现已经建…...
java将rtsp转成flv在浏览器播放
1、添加maven依赖 <dependency> <groupId>io.github.javpower</groupId> <artifactId>rtsp-converter-flv-spring-boot-starter</artifactId> <version>1.5.9.2</version> </dependency> 2、在配置application.ymlÿ…...

Docker-Compose使用自定义网桥后在OpenWrt系统中容器无法访问网络解决方案
Docker-Compose使用自定义bridge网桥后在OpenWrt系统中容器无法访问网络解决方案 示例compose描述文件如下,注意最后网络配置: # docker-compose --env-file .env.yoko.prod.local up -d services:...postgres:image: kuluseky/postgres-zhparser-post…...

界面组件DevExpress WPF中文教程:Grid - 行和卡片
DevExpress WPF拥有120个控件和库,将帮助您交付满足甚至超出企业需求的高性能业务应用程序。通过DevExpress WPF能创建有着强大互动功能的XAML基础应用程序,这些应用程序专注于当代客户的需求和构建未来新一代支持触摸的解决方案。 无论是Office办公软件…...

Qt enabled + geometry 属性(2)
文章目录 enabled属性可用与禁用的概念API接口代码演示 阐述说明1. 先简单描述下要如何演示出上面两个接口的效果(思路)2. 事先规范按钮对象的命名3. 定义两个按钮对象的槽函数 动图演示效果4. widget.cpp geometry属性预备知识API接口上下左右移动 ta…...

Llamaindex自学笔记(完)
Llamaindex框架主要做RAG,工作流用LangGraph做 换源: -i https://pypi.mirrors.ustc.edu.cn/simple/环境搭建: conda create -n llamaindex python3.12 conda activate llamaindexpip install llama-index pip install llama-cloud-servic…...
安全生态与职业跃迁
18. 网络安全产业生态 18.1 全球安全产业链解析 核心参与者角色 安全厂商: 终端安全:CrowdStrike、SentinelOne(EDR/XDR) 网络防御:Palo Alto Networks、Fortinet(NGFW/SASE) 云安全&#…...

飞书知识问答深度测评:企业AI应用落地的“范本级”产品
前言 当 AI 逐渐从技术前沿走向日常办公,我们最常听到的一个词是“效率提升”。但真正能做到降本增效、让企业员工切实受益的 AI 产品,仍属少数。尤其是在组织内部知识管理这一块,大多数企业仍停留在“搜索靠关键词、记录靠记忆、协作靠问人…...

draw.io的基础与进阶使用指南
前言 一、Draw.io 简介 Draw.io 是一款功能强大的绘图工具,支持在线使用和本地安装。它提供了丰富的模板和形状元素,能够绘制流程图、UML 图、甘特图、网络图等多种图形。Draw.io 的文件格式支持可编辑的矢量图和位图,方便后续修改 draw.io的…...
clang的介绍与使用
一、Clang 简介 Clang 是一个开源的 C/C/Objective-C 编译器前端,基于 LLVM(Low Level Virtual Machine) 项目开发。它被设计为替代传统 GCC 的现代化编译器,具有以下特点: 高性能:编译速度快,…...
GD32 IIC(I2C)通信(使用示例为SD2068)
一、前言 最近需要用到GD32的I2C通信,虽然是第一次做I2C通信,但是GD32完整的标准库有现存的I2C通信示例,虽然示例是EEPROM的通信,但是调用的函数应该是大差不差,所以上手比较简单,这里简单记录一下笔记&…...

Sanitizers
一、简介 sanitizers 是谷歌提供的一套开源工具,能够发现堆栈读写溢出、内存泄漏、线程数据竞争和死锁等问题。包括: AddressSanitizers (Asan):检测地址相关问题,如use-after-free,heap-buffer-overflow, stack_buffer_overflow,use_after_…...

pip代理出现问题 ProxyError
WARNING: Retrying (Retry(total4, connectNone, readNone, redirectNone, statusNone)) after connection broken by ‘ProxyError(‘Cannot connect to proxy.’, NewConnectionError(’<pip._vendor.urllib3.connection.HTTPSConnection object at 0x7f8347ad5ae0>: F…...
Ubuntu-多显示器黑屏问题及nvidia显卡驱动安装
Ubuntu-多显示器黑屏问题及nvidia显卡驱动安装 多显示器黑屏问题查看系统显卡信息多显示器黑屏问题 当通过HDMI为Ubuntu加入显示器时,发现新加入的显示器黑屏,更改设置里的显示器属性也无法解决。 该黑屏的原因是系统没有安装显卡驱动,因此需要安装驱动。 查看系统显卡信息…...

vue+threeJS 创建镂空球体(SphereGeometry)
嗨,我是小路。今天主要和大家分享的主题是“vuethreeJS 创建镂空球体(SphereGeometry)”。 上次看到一个做镂空球体的项目,自己也准备尝试着做一做。今天终于做完了,并对这个项目进行梳理。 镂空球体示例效果…...

[ Qt ] | 常见控件(一)
目录 Widget enable geometry 标题中的:有一不一定有二,但是有一说明还没结束。 Widget 控件(Widget),是界面上各种元素,各种部分的统称。 Qt中的控件都是继承自QWidget这个类,是Qt控件体系中,通用的…...

【八股战神篇】Java虚拟机(JVM)高频面试题
目录 专栏简介 一 请解释Java虚拟机(JVM)及其主要功能 延伸 1. JVM的基本概念 2. JVM的主要功能 二 对象创建的过程了解吗 延伸 1.Java 创建对象的四种常见方式 三 什么是双亲委派模型 延伸 1.双亲委派机制的作用: 2.双亲委派模型的核心思想: 3.双亲委派模型的…...
Pycharm-jupyternotebook不渲染
解决方案: https://youtrack.jetbrains.com/issue/PY-54244 import plotly.io as pio pio.renderers.default "vscode"...
lanqiaoOJ 4330:欧拉函数模板
【题目来源】 https://www.lanqiao.cn/problems/4330/learning/ 【问题描述】 这是一道模板题。 首先给出欧拉函数的定义:即 φ(n) 表示的是小于等于 n 的数中和 n 互质的数的个数。 比如说 φ(6)2,当 n 是质数的时候,显然有φ(n)n-1。 【题…...

NDVI谐波拟合(基于GEE实现)
在遥感影像中,我们常用 NDVI(归一化植被指数)来衡量地表植被的绿度。它简单直观,是生态监测、农情分析的基础工具。但你是否注意到: NDVI 虽然“绿”,却常常“乱”。 因为云层、观测频率、天气干扰…...