标签: 软件工具

  • 告别天价软件!开源数字人项目,让你轻松打造专属虚拟分身

    告别天价软件!开源数字人项目,让你轻松打造专属虚拟分身

    是否曾对炫酷的数字人技术心动,却被高昂的成本和陡峭的学习曲线劝退?无论是想成为虚拟主播,还是开发AI助手,今天这篇文章将是你的终极入门指南。我精选了5个GitHub上高星的开源项目,覆盖从人脸生成、实时驱动到智能对话的全流程,帮你零成本开启数字人创作之旅!

    为何要关注开源数字人项目?

    数字人已广泛应用于虚拟主播、数字员工、AI客服等领域,但商业解决方案往往价格不菲。开源项目则打破了这一壁垒,将顶尖技术免费开放给所有开发者与创作者。你无需从零开始,即可基于成熟框架快速定制专属虚拟形象,真正实现“数字人自由”。

    项目名核心优势适用人群技术门槛部署难度最佳场景
    Face-Transformers2D人脸生成,风格多样头像设计、新手虚拟头像制作、数字分身设计
    Live2D Cubism SDK2D实时驱动,直播适配好虚拟主播、UP主2D虚拟直播、短视频出镜
    Avatarify实时变身,会议神器打工人、社恐视频会议虚拟形象
    ChatGPT-4V Digital Human智能对话,语音交互开发者、内容党智能客服、虚拟助手
    PIFuHD3D建模,单图生成3D创作者中高中高3D虚拟偶像、游戏角色建模

    1. Face-Transformers:数字人脸“生成大师”

    介绍:小白也能上手的人脸生成工具!基于AI模型生成超逼真数字人脸,支持自定义性别、年龄、发型,还能让人脸“动起来”,做虚拟头像超方便。
    主要功能

    • 生成高清数字人脸图片,支持风格迁移(如写实、动漫、油画风)
    • 调整人脸特征:改发型、换表情、加配饰,自由度超高
    • 导出人脸模型用于视频制作或游戏角色
      应用场景:做虚拟主播头像、设计游戏NPC脸模、生成个性化数字分身
      部署方法
    1. 克隆仓库:git clone https://github.com/hukkelas/Face-Transformers.git
    2. 安装依赖:pip install -r requirements.txt
    3. 运行Web界面:python app.py,在浏览器调参数生成人脸
      亮点&小槽点:生成效果逼真,操作可视化;但需要显卡支持,低配电脑可能跑不动。
      GitHub链接:https://github.com/hukkelas/Face-Transformers

    2. Live2D Cubism SDK:2D数字人“动效引擎”

    介绍:虚拟主播圈的“顶流工具”!专门做2D数字人实时驱动,给静态头像加表情、动嘴巴、摆姿势,直播间互动感拉满。
    主要功能

    • 绑定人脸关键点,通过摄像头实时驱动数字人表情(眨眼、微笑、张嘴)
    • 支持手动调动作:点头、挥手、比心等预设动作库
    • 导出动画视频或实时推流到直播平台
      应用场景:2D虚拟主播直播、短视频数字人出镜、线上课程虚拟讲师
      部署方法
    1. 克隆仓库:git clone https://github.com/Live2D/CubismSDK.git
    2. 下载官方示例模型(需注册账号)
    3. 运行示例程序:./Samples/BasicExample,用摄像头驱动模型
      亮点&小槽点:2D动效自然,直播适配好;但高级功能需付费授权,免费版够用基础需求。
      GitHub链接:https://github.com/Live2D/CubismSDK

    3. Avatarify:实时数字人“变身神器”

    介绍:打工人狂喜的视频会议神器!通过摄像头把自己实时变成数字人,开会不想露脸?用虚拟分身代替,还能换发型妆容。
    主要功能

    • 实时人脸追踪,把摄像头画面替换成数字人形象
    • 支持自定义数字人:上传照片生成专属分身,保留你的表情特征
    • 兼容Zoom、Teams等会议软件,即插即用
      应用场景:视频会议虚拟形象、线上讲座匿名出镜、直播时切换数字人身份
      部署方法
    1. 克隆仓库:git clone https://github.com/alievk/avatarify.git
    2. 安装依赖:conda env create -f environment.yml
    3. 启动程序:python avatarify.py,选择数字人模型即可使用
      亮点&小槽点:实时性强,操作简单;但对网络和电脑性能有要求,可能偶尔卡顿。
      GitHub链接:https://github.com/alievk/avatarify.git

    4. ChatGPT-4V Digital Human:会聊天的“智能数字人”

    介绍:能说会道的数字助手框架!把ChatGPT的大脑装进数字人,支持语音对话、图像识别,问问题、讲故事、查信息样样行。
    主要功能

    • 语音交互:说话就能和数字人聊天,支持多语言
    • 视觉能力:数字人能“看”图片,描述内容或回答相关问题
    • 自定义人设:设置数字人性格、语气、专业领域(如客服、老师)
      应用场景:做智能客服数字人、开发虚拟助手、给孩子做AI玩伴
      部署方法
    1. 克隆仓库:git clone https://github.com/yangjianxin1/ChatGPT-4V-Digital-Human.git
    2. 配置OpenAI API密钥:修改config.py
    3. 运行:python app.py,通过麦克风和数字人对话
      亮点&小槽点:对话自然,功能全面;但需要OpenAI API密钥,有使用成本。
      GitHub链接:https://github.com/yangjianxin1/ChatGPT-4V-Digital-Human

    5. PIFuHD:3D数字人“建模神器”

    介绍:3D建模小白的救星!上传一张照片就能生成完整3D数字人模型,带身体、穿衣服,还能摆各种姿势,做虚拟偶像超合适。
    主要功能

    • 单张照片生成高精细3D数字人,包括面部、身体、服装细节
    • 支持调整姿势:让数字人站、坐、挥手,动作自然
    • 导出3D模型文件,用于动画制作或游戏开发
      应用场景:3D虚拟偶像制作、元宇宙数字分身、游戏角色快速建模
      部署方法
    1. 克隆仓库:git clone https://github.com/facebookresearch/pifuhd.git
    2. 安装依赖:pip install -r requirements.txt
    3. 运行:python -m apps.simple_test --input_image path/to/your/photo.jpg
      亮点&小槽点:3D建模效果惊艳,单图生成超方便;但模型训练需要大显存,普通电脑跑起来慢。
      GitHub链接:https://github.com/facebookresearch/pifuhd
  • GitHub热门智能体开源项目,让你秒变AI大神!

    GitHub热门智能体开源项目,让你秒变AI大神!

    AI发烧友们,大家好!最近是不是感觉哪里都在谈“智能体(Agent)”?从自动编程到智能决策,它俨然成了AI界的新晋“顶流”。但面对海量信息,你是否也曾感到无从下手:教程太浅、门槛太高,想亲手实践却找不到合适的项目?别担心!今天,我们就为大家精选了GitHub上10个高星智能体开源项目,涵盖从通用框架到垂直工具,从单机作战到多体协同,并附上保姆级介绍与实战指南。收藏这篇文章,你的智能体学习之路将事半功倍!

    智能体是什么?为什么它值得关注?

    简单来说,智能体是一个“会独立思考、自主行动的AI助手”。你只需给定一个目标,它便能自主规划任务、调用工具、执行步骤,甚至与其他智能体协同完成复杂工作。目前,智能体已广泛应用于科研、办公、游戏开发等领域。而开源项目,正是我们快速入门的“捷径”——无需从零造轮子,基于成熟代码稍作修改,你就能打造属于自己的智能体,高效又实用!

    先唠两句:啥是智能体?为啥要学?

    说白了,智能体就是“能自己干活的AI助手”——给它个目标,它会自己拆解任务、调用工具、调整策略,甚至和其他AI“组队打工”。现在从科研、办公到游戏、机器人,到处都能看到它的身影。而开源项目就是咱普通人的“快车道”:不用从零造轮子,直接改改代码就能搭自己的智能体,香到不行!

    10个必玩智能体开源项目,按头安利!

    1. AutoGPT:智能体界的“开山网红”

    介绍:当年一句“AI自主完成任务”直接引爆GitHub的狠角色!基于GPT模型,能自己规划、搜索、执行任务,堪称“AI版自动化脚本”。

    10个项目横向对比表(选项目不纠结!)

    项目名核心优势适用人群技术门槛部署难度最佳场景
    AutoGPT入门简单,自主性强新手、小白简单任务自动化
    MetaGPT分工清晰,输出质量高开发者、产品软件开发、项目规划
    LangChain万能工具箱,兼容性强全阶段开发者自定义智能体开发
    AutoGen多智能体协作,微软背书进阶开发者中高复杂决策、团队协作
    BabyAGI代码极简,原理清晰学习者、新手理解智能体逻辑
    HuggingGPT多模型联合,成本低开发者、研究者中高中高多模态任务、本地部署
    AgentGPT零代码,网页直接用纯新手、体验党快速测试、简单任务
    GPT-Researcher学术向专业,文献整理学生、研究员论文写作、文献综述
    CrewAI团队管理逻辑强项目管理者多角色协作、复杂任务
    AgentQL自然语言查数据业务、数据岗数据分析、报表生成


    主要功能

    • 自主拆解复杂任务(比如“写一篇AI发展报告”→ 拆成查资料、整理数据、写初稿、润色)
    • 调用搜索引擎、文件工具,甚至控制其他软件
    • 支持自定义目标和规则,灵活性拉满

    应用场景:自动写报告、数据整理、批量处理文件、简单的科研辅助
    部署方法

    1. 克隆仓库:git clone https://github.com/Significant-Gravitas/AutoGPT.git
    2. 安装依赖:pip install -r requirements.txt
    3. 配置OpenAI API密钥和目标,运行python -m autogpt即可
      亮点&小槽点:入门简单,适合新手练手;但偶尔会“钻牛角尖”,需要手动干预调整目标。
      GitHub链接:https://github.com/Significant-Gravitas/AutoGPT

    2. MetaGPT:多智能体“职场协作”神器

    介绍:由国内团队开发的“全流程智能体框架”,核心是模拟“职场团队分工”——比如产品经理、开发、测试各司其职,合力完成项目。
    主要功能

    • 内置“角色分工”系统:支持产品经理(提需求)、架构师(画方案)、开发(写代码)等角色
    • 自动生成文档、代码、测试用例,甚至能输出项目计划
    • 多智能体实时沟通协作,像真人团队一样推进任务
      应用场景:小型软件开发、项目规划、团队协作流程模拟、创业项目原型设计
      部署方法
    1. 克隆仓库:git clone https://github.com/geekan/MetaGPT.git
    2. 安装依赖:pip install -r requirements.txt
    3. 配置API密钥,输入需求(比如“开发一个贪吃蛇游戏”),运行python startup.py "你的需求"
      亮点&小槽点:分工超清晰,输出质量高;但对硬件和API额度要求稍高,新手可能需要先调参。
      GitHub链接:https://github.com/geekan/MetaGPT

    3. LangChain:智能体的“工具箱”(必学!)

    介绍:虽然不算纯智能体,但绝对是构建智能体的“基础设施”!把各种AI模型、工具、数据串起来,让你轻松搭出复杂智能体。
    主要功能

    • 集成主流大模型(GPT、LLaMA、文心一言等)和工具(搜索、数据库、API调用)
    • 提供“记忆模块”:让智能体记住对话历史和任务状态
    • 支持“链(Chain)”和“智能体(Agent)”两种模式,灵活组合功能
      应用场景:自定义智能体开发、聊天机器人、知识库问答、数据分析助手
      部署方法
    1. 直接安装库:pip install langchain
    2. 搭配具体模型(如OpenAI):pip install openai
    3. 参考文档写代码:定义工具→设置智能体→调用执行
      亮点&小槽点:兼容性超强,几乎所有智能体项目都绕不开它;但需要点代码基础,纯小白可能要先补Python。
      GitHub链接:https://github.com/langchain-ai/langchain

    4. AutoGen:微软出品的“智能体协作平台”

    介绍:微软研究院开源的多智能体框架,主打“让多个AI智能体聊天协作”,甚至能和人类实时互动,解决复杂问题。
    主要功能

    • 支持“智能体-智能体”“智能体-人类”混合协作
    • 自动分配任务、调用工具,还能辩论优化方案(比如两个智能体吵架改代码哈哈)
    • 兼容多种大模型,支持本地部署(不用依赖OpenAI)
      应用场景:复杂决策、代码审查、学术研究协作、多人任务分配
      部署方法
    1. 安装:pip install pyautogen
    2. 写配置文件:定义智能体角色、模型、工具权限
    3. 启动对话:python your_script.py 让智能体们开始“打工”
      亮点&小槽点:微软背书,稳定性强;协作逻辑超灵活,但配置稍复杂,建议先看官方示例。
      GitHub链接:https://github.com/microsoft/autogen

    5. BabyAGI:极简任务智能体

    介绍:名字萌但功能硬核!用不到200行代码实现“目标-任务-执行”闭环,适合新手理解智能体核心逻辑。
    主要功能

    • 核心逻辑:设定目标→生成任务→执行任务→更新任务列表
    • 支持用向量数据库存储任务记忆,避免重复劳动
    • 可自定义执行工具(比如加个网页爬虫、计算器)
      应用场景:学习智能体原理、搭建轻量任务助手(如定时查天气、整理邮件)
      部署方法
    1. 克隆仓库:git clone https://github.com/yoheinakajima/babyagi.git
    2. 安装依赖:pip install -r requirements.txt
    3. 配置OpenAI和向量数据库密钥,运行python babyagi.py输入目标
      亮点&小槽点:代码极简,新手能看懂;但功能基础,复杂任务需要自己加工具。
      GitHub链接:https://github.com/yoheinakajima/babyagi.git

    6. HuggingGPT: Hugging Face+GPT的“强强联合”

    介绍:浙大团队开源的“大模型调度官”!让GPT当“指挥官”,调用Hugging Face上的1000+开源模型干活,成本低还强。
    主要功能

    • GPT负责拆解任务、选模型,Hugging Face模型负责具体执行(如图像识别、翻译、代码生成)
    • 支持文本、图像、语音等多模态任务,全能选手
    • 本地部署可选,不用完全依赖API
      应用场景:多模态任务处理(如“给图片写文案+翻译”)、低成本智能体开发
      部署方法
    1. 克隆仓库:git clone https://github.com/microsoft/HuggingGPT.git
    2. 安装依赖:pip install -r requirements.txt
    3. 配置OpenAI和Hugging Face密钥,运行示例脚本
      亮点&小槽点:模型资源丰富,成本可控;但对设备算力有要求,本地跑大模型可能卡。
      GitHub链接:https://github.com/microsoft/HuggingGPT

    7. AgentGPT:浏览器直接玩的“零代码智能体”

    介绍:懒人福音!不用装环境,打开网页就能创建智能体,输入目标直接跑,新手友好度拉满。
    主要功能

    • 网页端可视化操作,填个目标就能启动智能体
    • 实时显示任务拆解和执行过程,像“看AI打工直播”
    • 支持保存历史记录,随时复盘调整
      应用场景:快速测试智能体效果、新手入门体验、简单任务自动化(如写提纲、查信息)
      部署方法
    1. 直接用在线版:https://agentgpt.reworkd.ai/(偶尔需要排队)
    2. 本地部署:克隆仓库后按文档配置Next.js环境,启动即可
      亮点&小槽点:零代码门槛,谁都能玩;但功能有限,复杂任务还是得用本地项目。
      GitHub链接:https://github.com/reworkd/AgentGPT

    8. GPT-Researcher:学术党狂喜的“论文助手”

    介绍:专注“学术研究”的智能体!输入研究主题,自动搜文献、读论文、整理观点,还能生成带引用的报告。
    主要功能

    • 自动搜索学术数据库(Google Scholar、Arxiv等)和权威来源
    • 提取核心观点、对比不同研究,生成结构化报告(带参考文献格式)
    • 支持自定义研究深度和报告风格(如摘要、综述、批判性分析)
      应用场景:写论文查资料、文献综述、快速了解研究领域进展
      部署方法
    1. 克隆仓库:git clone https://github.com/assafelovic/gpt-researcher.git
    2. 安装依赖:pip install -r requirements.txt
    3. 配置API密钥,运行python main.py输入研究主题
      亮点&小槽点:学术向超专业,省超多查文献时间;但依赖英文资源,中文文献支持一般。
      GitHub链接:https://github.com/assafelovic/gpt-researcher

    9. CrewAI:多智能体“团队管理”框架

    介绍:把智能体变成“团队成员”,你当“老板”给任务,它自动分配角色、设目标、追进度,主打一个省心。
    主要功能

    • 可视化定义角色(如“市场分析师”“文案写手”)、技能和目标
    • 智能体间自动沟通协作,遇到问题会“请示”你
    • 支持集成各种工具(API、数据库、爬虫)扩展能力
      应用场景:内容创作团队、市场调研、项目管理、多步骤任务处理
      部署方法
    1. 安装库:pip install crewai
    2. 写代码定义角色、任务和工具
    3. 启动团队:crew.kickoff() 坐等结果
      亮点&小槽点:团队管理逻辑超清晰,适合复杂协作;但文档较少,新手可能需要多试。
      GitHub链接:https://github.com/joaomdmoura/crewai

    10. AgentQL:智能体+数据库的“数据查询神器”

    介绍:让智能体直接“懂数据库”!输入自然语言问题(比如“查下上月销售额前5的产品”),自动生成SQL并查结果。
    主要功能

    • 自然语言转SQL,不用学代码也能查数据库
    • 支持MySQL、PostgreSQL等主流数据库,兼容性强
    • 自动校验SQL正确性,避免查错数据
      应用场景:数据分析、业务报表生成、非技术人员查数据
      部署方法
    1. 安装:pip install agentql
    2. 连接数据库,配置API密钥
    3. 用自然语言提问:agent.query("你的问题")
      亮点&小槽点:数据查询超方便,非技术党狂喜;但复杂查询可能需要手动调整SQL。
      GitHub链接:https://github.com/AgentQL/agentql

  • AI开源项目推荐清单赶紧收藏,开启你的开源AI宝藏库!

    在AI技术日新月异的今天,你是否也曾面临这些困惑:强大的模型总是闭源收费?想动手实践却不知从何开始?工具繁多却难以找到真正高效可靠的选项?本文正是为你量身打造的“寻宝图”。我们深入GitHub,为你精挑细选了10个涵盖不同领域的顶级开源AI项目

    10个必收藏的AI开源项目 | GitHub高星推荐 | 大模型/图像生成/语音识别/目标检测

    从驱动对话的大语言模型(LLaMA),到创造视觉奇迹的图像生成器(Stable Diffusion);从精准的语音识别工具(Whisper),到实时目标检测系统(YOLOv8);乃至帮助你快速构建应用的开发框架(LangChain, Gradio)——每一款都经过社区验证,兼具创新性与实用性。无论你是开发者、研究者、学生还是技术爱好者,这份清单都将为你提供从学习探索到项目实战的强力支持。现在,就让我们一起解锁这些开源神器,将 cutting-edge 的AI能力,转化为你手中的利刃。

    不管你是想练手、做项目,还是直接薅来干活,这篇清单都能让你直呼“捡到宝”!话不多说,上硬菜~

    1. LLaMA:Meta家的“平民大模型”

    详细介绍:这是Meta(脸书母公司)开源的大语言模型家族,从70亿参数到700亿参数应有尽有,主打一个“轻量能跑、开源免费”。普通人下载后,在消费级显卡上就能微调,不用再眼巴巴看着大厂模型流口水~

    核心特点

    • 尺寸灵活:从7B到70B参数,电脑配置不够也能玩小规格;
    • 微调友好:社区有超多现成工具(比如Alpaca-LoRA),新手也能快速调教;
    • 多语言支持:对中文、英文等主流语言适配都不错。

    应用场景:做聊天机器人、个性化问答系统、内容生成工具,甚至训练垂直领域小模型(比如法律、医疗)都合适。

    项目对比:和闭源的GPT-4比,LLaMA胜在“免费开源”,普通人也能下载微调;但论综合能力,GPT-4还是老大哥。和其他开源大模型(比如Mistral)比,LLaMA的生态更成熟,社区工具多到用不完~

    GitHub地址:https://github.com/facebookresearch/llama

    2. Stable Diffusion:AI绘画界的“扛把子”

    详细介绍:提到AI画图,没人能绕开Stable Diffusion!由Stability AI开源,支持文本生成图像、图像修复、风格迁移,关键是完全免费商用(非商用更没问题),普通电脑装个WebUI就能玩到飞起。

    核心特点

    • 插件狂魔:千种风格模型、LoRA微调、ControlNet控图,玩法多到离谱;
    • 本地化部署:不用蹭在线接口,自己电脑就能生成,隐私性拉满;
    • 社区活跃:每天都有新模型、新教程,小白也能快速出“大作”。

    应用场景:设计插画、海报制作、游戏美术辅助、表情包生成,甚至修复老照片、给线稿上色都超好用。

    项目对比:和Midjourney比,Stable Diffusion胜在“免费开源+本地化”,但出图效率和精细度稍弱;和DALL-E比,它的可控性更强,插件生态甩对手十条街~

    GitHub地址:https://github.com/Stability-AI/stablediffusion

    3. Whisper:OpenAI的“语音魔术师”

    详细介绍:OpenAI开源的语音识别模型,能把语音转文字、文字转语音,还支持99种语言!关键是准确率超高,连带口音的中文、英文都能轻松识别,简直是会议记录、视频字幕的救星。

    核心特点

    • 多任务全能:语音转文字、文字转语音、翻译(比如日语语音直接转中文文字)全拿下;
    • 小模型也能打:哪怕用base(基础)模型,准确率也甩很多商用工具一条街;
    • 开箱即用:Python几行代码就能调用,不用复杂配置。

    应用场景:会议纪要自动生成、视频字幕批量制作、播客转文字、多语言语音翻译工具开发。

    项目对比:和百度语音API比,Whisper胜在“本地部署+免费”,但实时性稍弱;和Google Speech-to-Text比,它对小语种和口音的兼容性更好~

    GitHub地址:https://github.com/openai/whisper

    4. LangChain:LLM应用的“胶水框架”

    详细介绍:想把大模型和数据库、API、知识库结合起来?LangChain就是干这个的!它像“乐高积木”一样,把各种AI组件拼起来,让你轻松开发聊天机器人、问答系统、智能助手,不用从零写代码。

    核心特点

    • 组件丰富:支持连接各种大模型(GPT、LLaMA、Claude)、数据库(MySQL、MongoDB)、搜索引擎;
    • 流程可控:能设计AI的思考步骤(比如“先查资料再回答”),避免大模型“瞎编”;
    • 入门简单:文档超详细,跟着教程走,半小时就能搭个简单的问答工具。

    应用场景:开发企业知识库问答机器人、带记忆功能的聊天助手、基于私有数据的AI分析工具。

    项目对比:和同类框架LlamaIndex比,LangChain更侧重“流程编排”,适合复杂应用;LlamaIndex则强在“数据处理”,新手入门可能更简单~

    GitHub地址:https://github.com/langchain-ai/langchain

    5. YOLOv8:目标检测界的“闪电侠”

    详细介绍:YOLO系列的最新版,主打“又快又准”的目标检测。能瞬间识别图片/视频里的人、车、动物、物体,在普通显卡上就能实时处理视频流,工业级场景都在用它。

    核心特点

    • 速度狂魔:每秒能处理几十帧视频,监控摄像头实时分析毫无压力;
    • 轻量化:小模型能在手机、嵌入式设备上跑,大模型精度堪比专业工具;
    • 开箱即用:预训练模型直接丢图就能识别,微调自己的数据也超简单。

    应用场景:智能监控(比如识别异常行为)、自动驾驶辅助(识别行人车辆)、工业质检(检测产品缺陷)、手机拍照识物APP。

    项目对比:和Faster R-CNN比,YOLOv8速度快10倍以上,精度稍低但够用;和SSD比,它的小目标识别能力更强,适合复杂场景~

    GitHub地址:https://github.com/ultralytics/ultralytics

    6. AutoGPT:AI界的“自律打工人”

    详细介绍:让AI自己“思考、规划、执行”的工具!你只需要给它一个目标(比如“写一篇关于AI开源项目的推文”),它会自动查资料、生成大纲、写内容,甚至能调用其他工具,全程不用你插手。

    核心特点

    • 自主决策:不用一步步指挥,AI自己拆解任务、调整策略;
    • 工具集成:能联网查信息、用搜索引擎、调用API,像个真人助理;
    • 开源免费:虽然还在完善中,但基础功能已经能用,适合尝鲜。

    应用场景:自动写报告、市场调研分析、内容创作辅助、复杂问题拆解(比如“规划一场AI技术分享会”)。

    项目对比:和ChatGPT的“单次对话”比,AutoGPT胜在“多步骤自主执行”,但容易“走偏”;和同类工具BabyAGI比,它的界面更友好,新手更容易上手~

    GitHub地址:https://github.com/Significant-Gravitas/AutoGPT

    7. Diffusers:AI生成的“工具箱”

    详细介绍:Hugging Face开源的生成模型库,里面不仅有Stable Diffusion的核心代码,还有各种图像生成、音频生成、视频生成模型。相当于给开发者搭了个“AI生成工厂”,想调参、改模型?用它就对了。

    核心特点

    • 模型丰富:除了图像生成,还有文生视频(如Video Diffusion)、图像修复等模型;
    • 代码简洁:几行代码就能调用复杂模型,调参改配置超方便;
    • 和Hugging Face生态无缝衔接:能直接用Hub上的模型,不用自己下载。

    应用场景:开发自定义AI绘画工具、研究生成模型原理、二次开发生成模型(比如加新功能)。

    项目对比:和Stable Diffusion的WebUI比,Diffusers更适合“开发者”做二次开发;WebUI则适合“普通用户”直接用~

    GitHub地址:https://github.com/huggingface/diffusers

    8. FastChat:大模型的“聊天服务员”

    详细介绍:想给你的LLaMA、Mistral等开源大模型加个聊天界面?FastChat一键搞定!它支持多模型部署、对话历史管理、API调用,还能搭个网页版聊天框,小白也能快速拥有自己的“ChatGPT”。

    核心特点

    • 多模型兼容:主流开源大模型都能装,切换模型像换手机壁纸一样简单;
    • 部署方便:一条命令启动服务,网页端、API端同时可用;
    • 支持多用户:能当服务器让多人同时用,适合小团队共享。

    应用场景:搭建私有聊天机器人、测试开源大模型效果、给模型加个可视化界面方便演示。

    项目对比:和同类工具vLLM比,FastChat更侧重“聊天交互”,界面更友好;vLLM则强在“高并发部署”,适合大规模使用~

    GitHub地址:https://github.com/lm-sys/FastChat

    9. MONAI:医疗AI的“专业助手”

    详细介绍:专门为医疗影像AI开发的框架,基于PyTorch,集成了各种医学图像预处理、分割、分类工具。医生和开发者用它能快速开发肿瘤检测、器官分割等模型,不用再从零处理DICOM这类特殊格式。

    核心特点

    • 医疗专用:支持DICOM格式、3D影像处理(CT/MRI常用),贴合医疗场景;
    • 模型丰富:内置肿瘤分割、病灶检测等预训练模型,开箱即用;
    • 合规友好:遵循医疗数据隐私规范,适合医院、科研机构使用。

    应用场景:医学影像辅助诊断(比如CT肺结节检测)、病灶分割、医疗图像分析研究。

    项目对比:和普通CV框架(如PyTorch Lightning)比,MONAI胜在“医疗专用工具多”,不用自己写医学图像预处理代码~

    GitHub地址:https://github.com/Project-MONAI/MONAI

    10. Gradio:AI模型的“快速装裱师”

    详细介绍:开发者的“界面救星”!不用学前端,几行Python代码就能给你的AI模型(不管是图像生成、语音识别还是分类模型)加个网页交互界面,支持上传图片、输入文字、实时显示结果,演示、测试超方便。

    核心特点

    • 代码极简:哪怕只会写print,也能搭出能用的界面;
    • 实时更新:改代码不用重启服务,刷新网页就能看效果;
    • 支持多类型输入输出:文字、图片、音频、视频都能搞定。

    应用场景:快速演示AI模型效果、给客户/老板展示项目、收集用户反馈、教学中的模型可视化。

    项目对比:和Streamlit比,Gradio更侧重“快速交互”,界面组件更丰富;Streamlit则强在“数据可视化”,适合展示分析结果~

    GitHub地址:https://github.com/gradio-app/gradio


    以上10个AI开源项目,从大模型、绘画、语音到开发工具,基本覆盖了当下最火的AI应用场景。

  • WEBP/PNG/HEIC批量转JPG:李哥的一键式图片格式转换神器

    WEBP/PNG/HEIC批量转JPG:李哥的一键式图片格式转换神器

    兄弟们,是不是经常遇到这些头疼事?

    • 从网站扒下来的图片全是 WEBP​ 格式,编辑软件打不开?
    • PNG​ 图片虽然清晰,但体积太大,上传发布总受限制?
    • 用苹果设备拍的照片是 HEIC​ 格式,在Windows电脑上就成了“天书”?

    别慌!李哥出手,必属精品!今天给大家带来的这款 「批量图片格式转换JPG工具」,就是专门治这些“格式不服”的!它就像你图片库里的“格式统一大师”,管你什么WEBP、PNG还是HEIC,统统给咱变成最通用、最省心的 JPG​ 格式!

    真正的“傻瓜式”操作:把脚本和图片放一个文件夹,双击运行,剩下的交给程序。自动安装环境、自动转换、自动整理文件,你只管喝杯茶等着收JPG就行!特别加入了 HEIC 格式支持,再也不用为苹果照片在电脑上打不开而发愁了。转换后的JPG、原始文件、转换失败的图片,会自动分门别类存到 convert/source/failed/三个文件夹里,井井有条,绝不乱套。万一有同名文件?不存在的!程序会自动给你加上序号,保证一个文件都不会被覆盖。

    下载脚本 -> 双击运行 -> 收获一文件夹整齐的JPG图片!

    李哥已经把代码和详细的使用说明都准备好了,就等你来取。赶紧下载试试,从此告别图片格式转换的烦恼!做人呢,最重要的就是开心!用李哥的工具,让你的图片处理也开心起来!

    核心解读:

    作用:自动检查并安装必要的Python库(Pillow和pillow-heif)启用HEIC文件格式支持(苹果设备照片格式)

    创建虚拟环境并安装python库

    # 退出当前环境
    deactivate
    
    # 删除损坏的虚拟环境
    cd ~/Documents/env
    rm -rf myenv
    
    # 重新创建虚拟环境
    python3 -m venv myenv
    
    # 激活新环境
    source myenv/bin/activate
    
    # 检查pip是否正常
    pip --version
    
    # 安装Pillow
    pip install Pillow
    
    # 检查安装是否成功
    python3 -c "from PIL import Image; print('Pillow安装成功!')"

    创建三个目录:

    • convert/– 存放转换后的JPG文件
    • source/– 存放原始图片文件
    • failed/– 存放转换失败的文件

    智能移动文件到指定目录,自动处理重名文件(添加序号)输出格式JPG (.jpg) – 通用的有损压缩图片格式

    文件整理逻辑

    转换前目录结构:
    当前目录/
    ├── image1.webp
    ├── image2.png
    ├── image3.heic
    └── convert_images.py
    
    转换后目录结构:
    当前目录/
    ├── convert/           # 转换后的JPG文件
    │   ├── image1.jpg
    │   ├── image2.jpg
    │   └── image3.jpg
    ├── source/            # 原始文件(已移动)
    │   ├── image1.webp
    │   ├── image2.png
    │   └── image3.heic
    ├── failed/            # 转换失败的文件
    └── convert_images.py

    实现代码:

    #!/usr/bin/env python3
    # -*- coding: utf-8 -*-
    
    import os
    import glob
    import shutil
    import sys
    import subprocess
    
    def check_and_install_dependencies():
        """检查并安装必要的依赖"""
        dependencies = ['Pillow', 'pillow-heif']
        missing_deps = []
        
        # 检查Pillow
        try:
            from PIL import Image
            print("✓ Pillow 已安装")
        except ImportError:
            missing_deps.append('Pillow')
        
        # 检查pillow-heif
        try:
            import pillow_heif
            print("✓ pillow-heif 已安装")
        except ImportError:
            missing_deps.append('pillow-heif')
        
        # 安装缺失的依赖
        if missing_deps:
            print(f"❌ 缺少依赖: {', '.join(missing_deps)}")
            print("正在安装依赖...")
            
            for dep in missing_deps:
                try:
                    if dep == 'Pillow':
                        subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'Pillow'])
                    elif dep == 'pillow-heif':
                        subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'pillow-heif'])
                    print(f"✓ {dep} 安装成功")
                except subprocess.CalledProcessError:
                    print(f"❌ {dep} 安装失败,尝试使用镜像源...")
                    try:
                        subprocess.check_call([sys.executable, '-m', 'pip', 'install', dep, 
                                             '-i', 'https://pypi.tuna.tsinghua.edu.cn/simple/'])
                        print(f"✓ {dep} 安装成功(使用镜像源)")
                    except:
                        print(f"❌ {dep} 安装失败,请手动安装: pip install {dep}")
                        return False
            # 重新检查
            try:
                from PIL import Image
                import pillow_heif
                print("✓ 所有依赖安装成功")
                return True
            except ImportError as e:
                print(f"❌ 依赖安装后仍然失败: {e}")
                return False
        return True
    
    def setup_heic_support():
        """设置HEIC支持"""
        try:
            import pillow_heif
            pillow_heif.register_heif_opener()
            print("✓ HEIC格式支持已启用")
            return True
        except Exception as e:
            print(f"❌ HEIC支持初始化失败: {e}")
            return False
    
    def create_directories():
        """创建必要的目录"""
        directories = ['convert', 'source', 'failed']
        for directory in directories:
            if not os.path.exists(directory):
                os.makedirs(directory)
                print(f"✓ 创建目录: {directory}/")
    
    def move_file_to_directory(original_file, directory):
        """移动文件到指定目录"""
        try:
            filename = os.path.basename(original_file)
            destination = os.path.join(directory, filename)
            
            # 如果目标文件已存在,添加序号
            counter = 1
            base_name, ext = os.path.splitext(filename)
            while os.path.exists(destination):
                new_filename = f"{base_name}_{counter}{ext}"
                destination = os.path.join(directory, new_filename)
                counter += 1
            
            shutil.move(original_file, destination)
            return True
        except Exception as e:
            print(f"⚠ 移动文件失败 {original_file}: {e}")
            return False
    
    def convert_image_file(input_file, temp_jpg_file, is_heic=False):
        """转换图片文件"""
        try:
            from PIL import Image
            
            if is_heic:
                # HEIC文件特殊处理
                try:
                    import pillow_heif
                    heif_file = pillow_heif.open_heif(input_file)
                    image = Image.frombytes(
                        heif_file.mode, 
                        heif_file.size, 
                        heif_file.data,
                        "raw",
                        heif_file.mode,
                        heif_file.stride,
                    )
                except:
                    # 如果直接读取失败,尝试通过PIL打开
                    pillow_heif.register_heif_opener()
                    image = Image.open(input_file)
            else:
                # 其他格式文件
                image = Image.open(input_file)
            
            # 处理图片模式
            if image.mode in ('RGBA', 'LA', 'P'):
                background = Image.new('RGB', image.size, (255, 255, 255))
                if image.mode == 'P':
                    image = image.convert('RGBA')
                if image.mode == 'RGBA':
                    background.paste(image, mask=image.split()[-1])
                else:
                    background.paste(image)
                image = background
            elif image.mode != 'RGB':
                image = image.convert('RGB')
            
            # 保存为JPG
            image.save(temp_jpg_file, "JPEG", quality=85, optimize=True)
            return True, "成功"
            
        except Exception as e:
            return False, str(e)
    
    def batch_convert_images():
        """批量转换图片"""
        print("=== 图片格式批量转换工具 ===")
        
        # 检查并安装依赖
        if not check_and_install_dependencies():
            print("❌ 依赖安装失败,无法继续")
            return
        
        # 设置HEIC支持
        heic_supported = setup_heic_support()
        
        # 创建目录
        create_directories()
        
        # 收集文件
        files_to_convert = []
        for pattern in ['*.webp', '*.WEBP', '*.png', '*.PNG', '*.heic', '*.HEIC']:
            files_to_convert.extend(glob.glob(pattern))
        
        files_to_convert = sorted(list(set(files_to_convert)))
        files_to_convert = [f for f in files_to_convert if not any(f.startswith(d) for d in ['convert/', 'source/', 'failed/'])]
        
        if not files_to_convert:
            print("❌ 未找到可转换的图片文件")
            return
        
        # 分类统计
        webp_files = [f for f in files_to_convert if f.lower().endswith('.webp')]
        png_files = [f for f in files_to_convert if f.lower().endswith('.png')]
        heic_files = [f for f in files_to_convert if f.lower().endswith('.heic')]
        
        print(f"找到 {len(files_to_convert)} 个文件:")
        print(f"  WEBP: {len(webp_files)} 个, PNG: {len(png_files)} 个, HEIC: {len(heic_files)} 个")
        
        if heic_files and not heic_supported:
            print("⚠ HEIC文件将无法转换")
        
        # 转换统计
        results = {'success': 0, 'failed': 0, 'skipped': 0}
        
        for i, input_file in enumerate(files_to_convert, 1):
            filename_without_ext = os.path.splitext(os.path.basename(input_file))[0]
            temp_jpg_file = filename_without_ext + ".jpg"
            final_jpg_path = os.path.join('convert', temp_jpg_file)
            
            # 跳过已存在
            if os.path.exists(final_jpg_path):
                print(f"{i}/{len(files_to_convert)} ⚡ 跳过已存在: {final_jpg_path}")
                results['skipped'] += 1
                continue
            
            file_size = os.path.getsize(input_file) / 1024
            file_ext = os.path.splitext(input_file)[1].upper()
            is_heic = input_file.lower().endswith('.heic')
            
            print(f"{i}/{len(files_to_convert)} 🔄 转换: {os.path.basename(input_file)} ({file_size:.1f} KB)", end="")
            
            try:
                if is_heic and not heic_supported:
                    success, message = False, "HEIC支持未启用"
                else:
                    success, message = convert_image_file(input_file, temp_jpg_file, is_heic)
                
                if success:
                    # 移动成功文件
                    if os.path.exists(temp_jpg_file):
                        move_file_to_directory(temp_jpg_file, 'convert')
                    move_file_to_directory(input_file, 'source')
                    results['success'] += 1
                    print(" -> ✅ 完成")
                else:
                    # 移动失败文件
                    move_file_to_directory(input_file, 'failed')
                    results['failed'] += 1
                    print(f" -> ❌ 失败: {message}")
                    
            except Exception as e:
                move_file_to_directory(input_file, 'failed')
                results['failed'] += 1
                print(f" -> 💥 异常: {str(e)}")
        
        # 输出结果
        print(f"\n=== 转换完成 ===")
        print(f"✅ 成功: {results['success']}, ❌ 失败: {results['failed']}, ⚡ 跳过: {results['skipped']}")
    
    if __name__ == "__main__":
        batch_convert_images()
        input("\n按Enter键退出...")

  • “魔改”it-tools前端界面与Docker镜像构建实录

    “魔改”it-tools前端界面与Docker镜像构建实录

    “都是自己人,咱就捞干的说。”兄弟们,不知道你们有没有这种体验:网上找个JSON格式化、密码生成之类的小工具,要么广告满天飞,要么就得扫码关注,用起来那叫一个憋屈。反正李哥我是受够了!这不,就在Github上发现了这个叫 it-tools​ 的宝贝,一个集成了50多种开发者工具的纯前端网站,干净、免费、即开即用。官方提供了Docker镜像,一键部署是爽,但默认全是英文界面,Logo、标题啥的也都是人家的,用着总感觉是“寄人篱下”,不够得劲。

    所以,李哥今儿个要干票啥?咱不满足于“能用”,咱要的是“好用”,而且是“完全属于自己”的好用!这篇笔记,就手把手带你“扒掉”it-tools的官方外衣,给它换上咱自己的“皮肤”。从怎么克隆源码、修改标题Logo,到如何亲手构建一个写着咱自己大名的Docker镜像,最后部署上线。整个过程,说白了就是一次轻量级的“二次开发”。你放心,不需要你有多深的前端功底,跟着李哥的步骤,改改文字、换换图片,就跟给WordPress换个主题差不多简单。但做完之后,成就感绝对拉满——访问自己服务器上那个完全定制化的工具站,那感觉,就跟开盲盒开出了隐藏款一样爽!“工具嘛,就得驯服得贴贴心心,用起来才顺手。”​ 废话不多说,开整!

    一、核心思路

    it-tools是纯前端项目(Vue.js框架),所有界面内容都在源码的src/目录中。修改流程为: 克隆源码 → 修改前端文件 → 本地构建Docker镜像 → 运行自定义镜像

    二、详细步骤

    1. 准备环境

    确保安装Git、Node.js(16+)、Docker:

    # 安装依赖(Ubuntu示例)
    sudo apt install -y git nodejs npm docker.io

    2. 克隆源码并修改内容

    # 克隆仓库
    git clone https://github.com/CorentinTh/it-tools.git
    cd it-tools

    # 安装前端依赖
    npm install

    根据红框位置修改对应文件(以常见修改为例):

    修改内容文件路径示例操作
    顶部标题/Logosrc/App.vue搜索<header>标签,替换<h1>内容或<img>的src属性(Logo建议用Base64编码)
    工具分类名称src/tools/index.ts修改categories数组中的name字段(如将”Converter”改为”格式转换”)
    工具卡片名称/描述src/tools/[工具类型]/[工具名].ts如修改JSON格式化工具:src/tools/formatters/json-formatter.ts中的name和description
    页脚版权信息src/components/layout/Footer.vue修改<footer>标签内的文本

    修改后可本地预览效果:npm run dev(访问http://localhost:5173)。

    3. 构建自定义Docker镜像

    修改完成后,用官方Dockerfile构建镜像:

    # 在源码目录执行构建(约5分钟,依赖网络环境)
    docker build -t my-it-tools:custom . # 镜像名自定义,如my-it-tools:custom

    构建成功后,本地镜像列表会新增my-it-tools:custom。

    4. 运行自定义镜像

    用修改后的镜像启动容器,命令与官方类似:

    # 先停止并删除旧容器(如有)
    docker stop it-tools && docker rm it-tools

    # 启动自定义镜像
    docker run -d \
    --name it-tools \
    --restart unless-stopped \
    -p 9580:80 \ # 主机端口9580,可自定义
    my-it-tools:custom # 使用本地构建的镜像名

    三、验证与更新

    1. 访问验证:浏览器打开http://IP:9580,确认红框内容已修改。
    2. 后续更新:若官方源码更新,需重新克隆并合并修改(git pull),再重复构建步骤。

    四、注意事项

    1. 不建议直接修改容器内文件:通过docker exec进入容器修改文件会随容器删除丢失,且无法同步到新镜像。
    2. 保留官方镜像:自定义镜像命名避免与官方corentinth/it-tools冲突,便于区分。
    3. 复杂修改需前端基础:如调整样式需修改src/assets/styles/下的CSS文件,或通过src/main.ts注入全局样式。

    这种方式本质是“二次开发”,适合需要深度定制的场景。若仅需简单修改(如标题),10分钟即可完成;若涉及工具功能逻辑调整,需参考Vue.js和项目的开发文档。修改后的镜像可推送到私有仓库,方便多服务器部署。


    进阶容器持久化:

    通过Docker安装it-tools(开发者在线工具集)仅需三步,官方提供了两种镜像源选择,适用于Linux、Windows和macOS系统。以下是基于官方文档的完整部署指南。

    一、环境准备

    首先确保已安装Docker和Docker Compose。验证命令:

    docker -v          # 需显示20.10+版本
    docker compose version # 需显示v2.0+版本

    未安装可参考Docker官方文档,或使用简化脚本(Ubuntu示例):

    sudo apt update && sudo apt install -y docker.io docker-compose
    sudo systemctl enable docker --now

    二、核心部署步骤

    选项1:从Docker Hub拉取镜像(推荐)

    官方镜像体积约150MB,包含所有工具功能。执行以下命令启动容器:

    docker run -d \
    --name it-tools \         # 容器名称
    --restart unless-stopped \ # 异常退出时自动重启
    -p 8080:80 \               # 端口映射(主机端口:容器端口)
    corentinth/it-tools:latest # 镜像名称:版本标签
    • 参数说明:-d后台运行,-p 8080:80将主机8080端口映射到容器80端口(可修改主机端口避免冲突,如-p 9000:80)。

    选项2:从GitHub Packages拉取镜像

    若Docker Hub访问缓慢,可使用GitHub容器仓库:

    docker run -d \
    --name it-tools \
    --restart unless-stopped \
    -p 8080:80 \
    ghcr.io/corentinth/it-tools:latest

    三、验证与访问

    检查容器状态

      docker ps | grep it-tools  # 应显示STATUS为Up
      docker logs it-tools       # 查看启动日志,无报错即可

      访问工具网站: 在浏览器输入 http://服务器IP:8080(本地部署用http://localhost:8080),即可看到it-tools的工具列表,包含Base64编码、JSON格式化、正则表达式测试等50+开发者工具。

        四、进阶配置(可选)

        1. 数据持久化(针对未来版本)

        当前官方镜像未提供持久化目录(工具数据保存在浏览器本地存储),若需保存配置,可关注项目后续更新或通过Docker卷挂载:

        docker run -d \
        --name it-tools \
        --restart unless-stopped \
        -p 8080:80 \
        -v ./it-tools-data:/app/data \ # 挂载本地目录(需提前创建)
        corentinth/it-tools:latest

        2. HTTPS配置(生产环境)

        配合Nginx反向代理实现SSL加密:

        安装Nginx并配置虚拟主机,示例配置(/etc/nginx/sites-available/it-tools):

          server {
              listen 443 ssl;
              server_name tools.yourdomain.com;
             
              ssl_certificate /path/to/cert.pem;
              ssl_certificate_key /path/to/key.pem;
             
              location / {
                proxy_pass http://localhost:8080;
                proxy_set_header Host $host;
                proxy_set_header X-Real-IP $remote_addr;
              }
            }

          重启Nginx:sudo systemctl restart nginx。

            五、更新与卸载

            • 更新镜像
            docker stop it-tools && docker rm it-tools
            docker pull corentinth/it-tools:latest # 拉取最新版本
            # 重新执行docker run命令
            • 完全卸载
            docker stop it-tools && docker rm it-tools  # 停止并删除容器
            docker rmi corentinth/it-tools:latest       # 删除镜像

            通过Docker部署的it-tools保持与官方同步更新,单容器设计使其资源占用极低( idle状态内存<50MB),适合个人开发者或小型团队内部部署。若需自定义工具或贡献代码,可参考项目README中的开发指南。访问时遇到端口冲突,只需修改-p参数的主机端口即可快速解决。


            其它说明:

            sudo mkdir -p /www/wwwroot/it-tools-data && sudo chmod 777 /www/wwwroot/it-tools-data  #先手动创建主机目录(避免权限问题)
            docker run -d \
              --name it-tools \
              --restart unless-stopped \
              -p 9090:80 \  # 主机端口9090 → 容器端口80(正确映射)
              -v /www/wwwroot/it-tools-data:/data \  # 绝对路径挂载(当前无实际作用)
              corentinth/it-tools:latest
            docker exec -it it-tools /bin/sh   #进入容器
            docker ps | grep it-tools   #查看容器运行状态(应显示 Up X分钟)
            docker logs it-tools   #若状态异常,查看错误日志
            docker stop it-tools && docker rm it-tools     #通过容器名称删除
            docker ps -a | grep it-tools  # 找到名为"it-tools"的容器
            docker images | grep it-tools  #  查看it-tools镜像ID
            docker rmi def67890  #删除镜像(替换def67890为实际镜像ID)
            docker images | grep it-tools # 应无输出(镜像已删除)
            ls -la /www/wwwroot/it-tools  #先检查目录内容(避免误删)
            sudo rm -rf /www/wwwroot/it-tools   #确认无重要文件后删除

            通过GIT项目安装:

            IT-TOOLS如果需要定制LOGO修改前端内容最好是通过GIT在本地修改后再用DOCKER进行构建再次部署。因为你直接部署的话就不能自定义一些自己的内容

            sudo mkdir -p /www/wwwroot/it-tools-dev && sudo chmod 777 /www/wwwroot/it-tools-dev
            cd /www/wwwroot/it-tools-dev
            git clone https://github.com/CorentinTh/it-tools.git
            cd it-tools
            apt install npm
            npm install

            构建DOCKER镜像:

            docker build -t leepoet-tools:custom .

            如果遇到问题解决方案:

            # 1. 删除错误的 Dockerfile
            rm Dockerfile
            
            # 2. 创建正确的 Dockerfile
            cat > Dockerfile << 'EOF'
            FROM node:20.19.5-alpine AS builder
            WORKDIR /app
            COPY package.json pnpm-lock.yaml ./
            RUN npm install -g pnpm && pnpm install
            COPY . .
            ENV NODE_OPTIONS="--max_old_space_size=8192"
            RUN npx vite build
            FROM nginx:alpine
            COPY --from=builder /app/dist /usr/share/nginx/html
            EXPOSE 80
            CMD ["nginx", "-g", "daemon off;"]
            EOF
            
            # 3. 验证文件内容
            cat Dockerfile
            
            # 4. 构建镜像
            docker build -t leepoet-tools:custom .
            
            # 5. 运行容器
            docker run -d -p 3000:80 --name it-tools-container leepoet-tools:custom

            后续管理指令:

            # 停止容器
            docker stop it-tools-container
            
            # 启动容器
            docker start it-tools-container
            
            # 重启容器
            docker restart it-tools-container
            
            # 进入容器内部(调试用)
            docker exec -it it-tools-container sh
            
            # 删除容器
            docker rm it-tools-container
            
            # 查看容器详细信息
            docker inspect it-tools-container
            
            # 查看容器使用的资源
            docker stats it-tools-container

            构建完镜像后打包:

            使用镜像保存/加载(适合内网环境)

            # 保存镜像为文件
            docker save -o leepoet-tools.tar leepoet-tools:custom

            传输到服务器

            # 使用 scp 传输(替换为你的服务器信息)
            scp leepoet-tools.tar root@你的服务器IP:/tmp/

            在服务器上加载运行

            # 在服务器上加载镜像
            docker load -i /tmp/leepoet-tools.tar
            
            # 运行容器
            docker run -d -p 3000:80 --name it-tools-container leepoet-tools:custom
            
            # 停止并删除现有容器(如果存在)
            docker stop it-tools-container
            docker rm it-tools-container
            
              # 假设容器内网站根目录是/usr/share/nginx/html
            # 重新运行容器并挂载目录
            docker run -d \
              -p 3000:80 \
              --name it-tools-container \
              -v /www/wwwroot/tools.leepoet.cn:/usr/share/nginx/html \
              leepoet-tools:custom


          1. 如何为你的网站挑选合适的服务器?(附VPS/云服务器/虚拟主机详解)

            如何为你的网站挑选合适的服务器?(附VPS/云服务器/虚拟主机详解)

            兄弟,是不是一看到“服务器”这三个字,就觉得那是机房里的黑盒子,是运维大神才搞得定的玩意儿?别慌!当年我哲学系毕业,转头扎进这数字世界,也是从一脸懵圈开始的。

            今天,咱不整那些虚头巴脑的概念,就像老朋友聊天一样,我来给你把这“服务器的门道”一次捋清楚。这篇文章,是我摸爬滚打多年攒下的“实战心得”。从服务器到底是个啥(它可比你想象的要简单),到VPS、云服务器、虚拟主机这些花名该怎么选(这直接关系到你的钱和网站的未来),再到怎么像回家开门一样轻松登录它、管理它——我都给你备齐了。

            我的目标就一个:让你读完就能心里有底,手上不慌,像个老手一样做出明智选择。​ 咱们这就开始,一起把你网站的“家”安顿得明明白白!

            什么是服务器?

            简单来说,服务器就是一台24小时待命的计算机,它负责存储网站文件与数据,并专门处理用户的访问请求。

            云服务器机房
            云服务器机房

            可以肯定地说,网站的正常运行完全离不开服务器。没有它,网站将无法存储任何信息,更谈不上响应你的点击和浏览。

            每台服务器都有一个唯一的IP地址,它就像是服务器的“门牌号”。

            我们虽然输入域名来访问网站,但系统会利用域名系统(DNS)将该域名解析成对应的IP地址,从而确保用户设备能准确连接到目标服务器。

            服务器的构成

            那么,服务器到底由哪些部分组成呢?

            其实,服务器就像普通电脑一样,主要由硬件和软件两大部分组成。

            核心硬件

            服务器硬件涉及的方面很多,但我们通常重点关注以下几项:

            • CPU(中央处理器):服务器的“大脑”,负责执行各种计算任务,速度极快,核心数量直接决定处理效率。
            • 内存(RAM):高速缓存,用于临时存储正在运行的程序和数据,直接影响服务器的响应速度。
            • 存储(硬盘HDD/SSD):用于持久保存操作系统、应用程序和数据。目前更常用的是速度更快的固态硬盘SSD
            • 带宽:衡量服务器数据传输能力的重要指标,影响网站访问速度和数据吞吐量。
            服务器选购界面
            服务器选购界面

            软件架构

            服务器的软件主要由操作系统和各种应用程序组成,它们协同工作,将底层硬件资源转化为对外提供的各项服务。

            操作系统

            在云服务器中,操作系统又被称为镜像。它相当于我们个人电脑上的WindowsmacOS,但它是经过预配置、专为服务器环境设计的。

            • 功能:它的主要职责是管理和调度服务器的底层资源(如CPU、内存、存储),从而为所有应用提供稳定可靠的运行环境。
            • 主流选择:常见的服务器操作系统包括Linux(如:CentOSUbuntu ServerDebianRed Hat)和Windows Server
            • 特点:这类操作系统通常非常注重安全性、稳定性,不仅有高效的网络处理能力,还具备强大的命令行和远程管理功能。

            应用程序

            服务器的应用程序是为满足不同业务需求而安装的软件。通过它们,服务器具备了特定的服务能力。

            Web 服务器

            例如ApacheNginx,它们负责接收用户的访问请求,从服务器文件系统中读取相应的网站文件(如HTMLCSSJS等),并通过网络将网页内容发送到用户的浏览器,从而实现网站的正常显示和访问。

            数据库

            例如MySQLPostgreSQLSQL Server等,它们作为数据“仓库”,负责安全、高效地存储、组织和检索网站运行所需的各种核心数据。

            常见的服务器类型

            当搭建网站时,常会遇到一些名词如VPS、云服务器和虚拟主机。对初学者来说,容易一头雾水,不知从何下手。

            简单来说,它们都是基于一台真实的物理服务器,通过技术手段将其分割成不同的“空间”,再租给不同的用户使用。

            核心区别在于:

            这些“空间”在资源分配模式、用户权限、运行速度和价格定位上存在显著差异,因此分别适用于不同的建站需求。

            虚拟主机:“合租房”

            就像你和别人合租的一套房子,你只拥有其中的一个房间。

            你只需管理好自己的房间(网站文件),无需操心大楼的公共设施(服务器维护)。

            因为所有资源(CPU、内存)都是共享的,所以一旦“邻居”的网站流量过大,你的网站性能也可能跟着受到影响。通常,一个虚拟主机账户只能运行一个网站。

            • 优势:价格最便宜,管理最简单,适合预算有限或刚入门的个人网站/博客。
            • 操作:配置简单,直接上传网站程序即可运行;文件管理可通过FTP等工具完成。

            VPS:“独享套间”

            你拥有一个独立的套间,带有你的专属IP地址。你的计算资源(CPU、内存)是独享的,完全不受其他用户的影响。

            你还拥有管理员权限,可以自由选择“装修风格”(操作系统)并安装任何软件。只要配置允许,一个VPS实例可以承载多个网站。

            • 优势:性能稳定,自主权高,性价比高,适合需要特定环境的中小型网站。
            • 操作:用户需要自行配置操作系统、环境和安全设置,因此要求具备一定的技术基础。

            云服务器:“独栋别墅”

            你租的不再是固定大小的房子,而是可以随时扩建的别墅。在业务忙碌时,你可以轻松“加盖”(弹性伸缩),立即获得更多资源。

            • 优势:高度灵活,高可用性,按需付费(用多少付多少),适合流量波动大、对稳定性有极高要求的大型企业。
            • 操作:与VPS类似,用户仍需要自行配置操作系统、环境和安全设置,因此要求具备较高的技术基础。

            通过刚才的比喻,相信您已经对三者的区别有了清晰的认识。

            如果仅从性能和稳定性的角度排序,通常是:云服务器 > VPS  > 虚拟主机

            当然,存在即合理,服务器的选择没有绝对的好坏之分,只有是否最适合您的需求。

            如何选择合适的服务器?

            服务器的选择主要取决于您的网站规模、性能需求、预算以及技术能力

            对于个人博客或小型企业展示网站,成本较低、易于管理的虚拟主机通常就足够了。

            对于开发者、运维人员等,当您需要部署多个站点并追求高性能时,VPS或云服务器会是更理想的选择。

            其他需要考虑的因素

            地理位置(加速访问):

            服务器的物理位置应靠近目标用户群,这是显著提升网站访问速度的关键。

            例如,若用户群体集中在新加坡或东南亚,服务器应相应选择部署在当地。

            配置选择(根据需求):

            • 展示型网站(预算有限):选虚拟主机即可。
            • VPS/云主机(通用推荐):建议初期选择2核4G配置,可支持多个访问量较小的网站。

            带宽选择(速度与成本):

            带宽越大,加载速度越快,但费用也越高。

            • 流量小:建议选择按流量计费。
            • 流量稳定且大:建议选择固定带宽,带宽数值越高越好。

            操作系统(稳定安全):

            优先推荐Linux,因为它在性能、稳定性和安全性方面通常优于Windows

             

            服务器性能与配置成正比。 建议按实际需求选购,避免资源浪费。

            知名服务商

            购买服务器,请务必选择信誉良好、规模较大的服务商,这是服务质量和售后保障的根本。

            常见服务商推荐

            • 国外知名厂商:HostingerSitegroundCloudwaysGoDaddy、搬瓦工、亚马逊云(AWS)等。
            • 国内主流厂商:阿里云、腾讯云等。

            外贸站点服务器服务商的选择

            搭建外贸独立站时,许多人倾向国外服务商。但如果您的业务没有特殊网络要求,建议优先考虑国内大型平台。

            这是因为国内平台更贴合您的使用习惯和时差,能确保您在遇到问题时,更快速便捷地获得技术支持和解决。

            如何挑选最具性价比的服务器?

            确定配置后,建议您多平台对比同规格产品价格,以选出最具性价比的方案。

            ✅ 稳定压倒一切

            无论选择国内还是国外,都应优先挑选大型服务商。这是因为服务器的稳定性对任何网站都至关重要。

            频繁的宕机,对用户体验和搜索引擎爬虫来说,都是极其致命的打击。

            服务器新手入门

            很多新手购买了服务器后,不知道该做什么。其实流程很简单:只要你手上有服务器的IP地址、账号和密码,就可以开始登录管理了。

            具体的登录方式取决于你的服务器安装的是Windows系统还是Linux系统(如常见的CentOS)。我们分别来看看:

            登录和管理 Windows 服务器

            Windows服务器通常使用远程桌面连接(RDP)进行图形化管理。

            你需要准备

            • 服务器的公网IP地址(可能带有端口号,如123.45.67.89:3389
            • 管理员用户名(Windows默认为Administrator
            • 管理员密码

            登录操作步骤

            打开“远程桌面连接”:在你的Windows电脑上,按下Win + R键,输入mstsc后回车,或直接在“开始”菜单搜索打开。

            输入地址并连接:在弹出的窗口中,输入服务器的公网IP地址(如果服务商提供了端口号,请一并加上)。

            点击 “连接”。
            点击 “连接”。

            登录:在登录窗口输入用户名和密码。

            为了方便下次登录,你可以选择勾选“记住我的凭据”。

            确认信息无误后,点击“确定”或“是”即可完成连接。
            确认信息无误后,点击“确定”或“是”即可完成连接。

            如果信息正确,你将看到服务器的桌面界面。现在,你可以在服务器上安装软件、配置服务或部署网站。

            登录后,你可以根据需要更改用户名和密码。

            登录管理Linux服务器(SSH命令行)

            Linux服务器主要通过 SSH (Secure Shell) 协议进行命令行管理。这意味着你将通过输入命令而非图形界面来操作服务器。

            你需要准备:

            • 服务器的 IP地址 或域名
            • SSH 端口号(默认通常是 22
            • 用户名(例如root或普通用户账户)
            • 对应的密码

            登录工具推荐:

            Windows系统上,推荐使用 Xshell 或 FinalShell 等流行的SSH客户端。它们的登录原理类似于Windows的远程桌面连接。

            FinalShell登录服务器演示

            官网:https://www.hostbuf.com/

            根据您的电脑系统,选择并下载合适的版本。

            打开 FinalShell 后,新建 SSH 连接
            打开 FinalShell 后,新建 SSH 连接
            输入服务器 IP 地址、用户名和密码
            输入服务器 IP 地址、用户名和密码
            首次连接会出现“主机密钥未注册”的安全警告。请直接选择 【接受并保存】。
            首次连接会出现“主机密钥未注册”的安全警告。请直接选择 【接受并保存】。
            登录成功后,您将看到命令行界面(Terminal),以及服务器的实时运行状态(如 CPU、内存使用情况)。
            登录成功后,您将看到命令行界面(Terminal),以及服务器的实时运行状态(如 CPU、内存使用情况)。
            通过命令行开始管理您的服务器
            通过命令行开始管理您的服务器

            常见的服务器命令行

            以下是按功能分类的最常用和最重要的Linux服务器命令:

            文件和目录管理

            ls: 列出当前目录的内容。
            ls -l: 显示详细信息(权限、所有者、大小、修改日期等)。
            ls -a: 显示所有文件,包括隐藏文件(以 . 开头的文件)。
            cd: 切换目录 (Change Directory)。
            cd /path/to/directory: 切换到指定路径。
            cd ..: 返回上一级目录。
            cd ~: 返回用户主目录。
            pwd: 显示当前工作目录的完整路径 (Print Working Directory)。
            mkdir: 创建新目录。
            mkdir mynewdir: 创建一个名为 mynewdir 的目录。
            mkdir -p /path/to/parent/newdir: 递归创建目录(如果上级目录不存在也会创建)。
            rm: 删除文件或目录。
            rm myfile.txt: 删除文件。
            rm -r mydir: 递归删除目录及其内容。
            rm -rf mydir: 强制递归删除目录及其内容(慎用,不可恢复)。
            cp: 复制文件或目录。
            cp file1.txt file2.txt: 复制文件并重命名。
            cp -r dir1 dir2: 递归复制目录。
            mv: 移动文件或目录,也可以用于重命名。
            mv file.txt /path/to/newlocation/: 移动文件到新位置。
            mv oldname.txt newname.txt: 重命名文件。
            touch: 创建空文件或更新文件的时间戳。
            touch newfile.txt: 创建一个名为 newfile.txt 的空文件。
            cat: 查看文件内容。
            cat myfile.log: 显示 myfile.log 的所有内容。
            less / more: 分页查看文件内容,适合大文件。less 功能更强大,可以向上翻页。
            less largefile.txt
            head: 查看文件开头几行(默认前10行)。
            head -n 5 myfile.txt: 查看前5行。
            tail: 查看文件末尾几行(默认后10行),常用于查看日志文件。
            tail -f /var/log/messages: 实时跟踪日志文件的新增内容。

            系统信息和网络

            df: 查看磁盘空间使用情况 (Disk Free)。
            df -h: 以人类可读的格式显示。
            du: 查看文件或目录的磁盘使用空间 (Disk Usage)。
            du -sh mydir: 显示 mydir 目录的总大小。
            free: 查看内存使用情况。
            free -h: 以人类可读的格式显示。
            uname: 显示系统信息。
            uname -a: 显示所有系统信息。
            hostname: 显示或设置主机名。
            ip addr / ifconfig: 查看和配置网络接口(ifconfig 在新版 Linux 中可能被 ip addr 取代)。
            ping: 测试网络连通性。
            ping www.baidu.com: 测试与百度的连通性。
            netstat: 显示网络连接、路由表、接口统计等(在新版 Linux 中部分功能被 ss 或 ip 命令取代)。
            netstat -tulnp: 显示所有监听的 TCP 和 UDP 端口及其对应的进程。
            ss: 更快速地查看套接字统计信息。
            ss -tulnp: 与 netstat -tulnp 类似。
            wget / curl: 从网络下载文件。
            wget https://example.com/file.zip: 下载文件。
            curl -O https://example.com/file.json: 下载文件。

            其他重要类别

            除了上述内容外,服务器管理还涉及:

            • 用户和权限管理(创建用户、设置权限,确保安全)
            • 进程管理(查看及终止运行中的程序)
            • 软件包管理(使用yum/dnfapt等工具安装、更新软件)

            新手不必试图记住所有命令及其参数。

            最有效的方法是:

            精通基础常用命令后,遇到不熟悉的细节,再随时通过搜索或查阅文档学习具体用法。

            最专业的Linux命令大全
            最专业的Linux命令大全

            在线Linux命令手册:

            https://wangchujiang.com/linux-command/index.html

             

            重要提示:执行文件删除操作时,务必做好数据备份,以避免重要数据丢失。

            服务器管理面板

            对于不熟悉命令行的用户,服务器管理面板是简化管理的理想选择。

            这类面板提供直观的可视化界面,让你无需掌握复杂的命令行,即可轻松完成Web环境配置和日常网站维护。

            以下是一些常见的服务器管理面板:

            宝塔面板

            官方:https://www.bt.cn/

            宝塔面板在国内用户群体中想必已经非常熟悉了。

            它凭借极简的安装、直观的界面和强大的功能,极大地降低了服务器管理难度,深受个人站长和小型企业青睐。

            宝塔面板
            宝塔面板

            通过宝塔面板,无论是Linux还是Windows服务器,用户都能轻松实现Web环境的一键部署,并高效地完成网站、文件、数据库等各项管理任务。

            cPanel面板

            官网:https://www.cpanel.net/

            cPanel是广受Linux用户喜爱的一款面板,它的核心优势是利用图形化界面简化复杂的服务器管理。

            所有用户都可以通过它直观地操作文件、数据库、电子邮件账户、域名等各项功能,实现快速上手。

            cPanel面板
            cPanel面板

            重要提示:cPanel是一款商业付费软件,需要授权。

            CyberPanel

            官网:https://cyberpanel.net/

            CyberPanel是一款免费开源、功能丰富的服务器管理面板,尤其适合追求高性能网站托管的用户。

            CyberPanel面板
            CyberPanel面板

            它的核心优势是默认深度集成了OpenLiteSpeed/LiteSpeed Enterprise这两款高性能Web服务器。

            同时,CyberPanel还自带缓存优化和一键WordPress部署功能,非常适合有技术背景的朋友。

            小皮面板(原 phpStudy)

            官网:https://m.xp.cn/

            说到PHP开发环境,小皮面板是一款非常优秀的工具,它免费、轻便,且支持跨平台使用(WindowsmacOSLinux)。

            小皮面板不同于宝塔、CyberPanel等面板,它的核心功能是快速搭建和管理本地PHP开发环境,非常适合新手在本地学习和练手。

            除了上述介绍的面板,常见的选择还包括1PanelPleskWebmin/VirtualminAMHWDCP等。

            最后还是要看你自己,哪个面板用起来顺手,就选哪个。

            新手建议直接用服务器管理面板。

            这样可以绕开那些复杂的命令行,让你把时间和精力放在网站的快速搭建和内容运营上。

            结语

            掌握了以上这些服务器基础知识,您就足以应对大多数中小型网站的日常需求。

            对于内容管理人员来说,服务器管理其实很简单,就是文件上传和替换。只要您选对了型号和管理面板,日常维护工作就会非常简单轻松。

            你可能感兴趣的

            •  

             

          2. 从本地部署好的it-tools项目再部署到服务器并上线

            从本地部署好的it-tools项目再部署到服务器并上线

            随着开发工作的日益复杂,高效、集成的开发工具成为提升生产力的关键。IT-Tools 作为一个开源的工具集合项目,将多种常用开发工具(如编码转换、格式化、加密解密等)聚合于一体,为开发者提供了极大的便利。

            之前在本地部署了一个it-tools,因为感觉它比较轻便,于是想部署到服务器上来。

            1.首先,在本地的it-tools目录中构建镜像文件并在本地保存镜像:

            # 在当前it-tools根目录下构建并取名为leepoet-tools
            docker build -t leepoet-tools:custom .
            
            # 打包镜像为leepoet-tools.tar
            docker save -o leepoet-tools.tar leepoet-tools:custom

            2.然后把镜像上传到服务器的/tmp目录下:

            # 使用 scp 传输(替换为你的服务器信息)
            scp leepoet-tools.tar root@你的服务器IP:/tmp/

            3.在服务器上用docker加载镜像:

            # 在服务器上加载镜像
            docker load -i /tmp/leepoet-tools.tar

            可以通过docker ps -a查看一下:

            4.在服务器上通过docker生成容器并运行:

            # 运行容器
            docker run -d -p 3000:80 --name leepoet-toolkit leepoet-tools:custom

            *注:

            这里有几个点要注意,因为it-tools镜像是一个基于 Alpine Linux​ 的 Nginx​ 镜像,并且将 /app/dist目录的内容复制到了 /usr/share/nginx/html(标准的 Nginx 静态文件目录)。目前我无法通过:

            # 假设容器内网站根目录是/usr/share/nginx/html
            # 重新运行容器并挂载目录
            docker run -d \
              -p 3000:80 \
              --name it-tools-container \
              -v /www/wwwroot/tools.leepoet.cn:/usr/share/nginx/html \
              leepoet-tools:custom
            
            或者
            
            docker run -d \
              --name it-tools \
              -p 3000:3000 \
              -v /www/wwwroot/tools.leepoet.cn:/data \
              corentinth/it-tools:latest

            这样的命令去持久化生成它。

            如果直接用这个目录/usr/share/nginx/html挂载到/www/wwwroot/tools.leepoet.cn,网站打不开。

            如果用/data目录挂载到/www/wwwroot/tools.leepoet.cn的话,网站是可以打开的。但是 /www/wwwroot/tools.leepoet.cn是空的,因为 Nginx 默认不向 /data写入数据,它只从 /usr/share/nginx/html读取静态文件。所以挂载到/data目录没有什么意义。最后我还是直接:

            docker run -d -p 3000:80 --name leepoet-toolkit leepoet-tools:custom

            生成了容器并运行起来。

            然后通过复制容器内的文件到宿主机:

            docker cp leepoet-toolkit:/usr/share/nginx/html/. /www/wwwroot/tools.leepoet.cn/

            这样的话我是想直接通过正向代理到这个目录。

            他现在读取的路径就是/www/wwwroot/tools.leepoet.cn/

            https://tools.leepoet.cn/ 然后通过BING提交验证,并通过

            为什么要这么操作?

            因为之前我是直接把上传的镜像生成在服务器的容器内部,并用域名反向代理到这个内部的容器。也就是DOCKER里的/usr/share/nginx/html这个目录。如果想做SEO验证就必须把XML的文件个人感觉还是比较麻烦。所以如果把/usr/share/nginx/html/直接复制到/www/wwwroot/tools.leepoet.cn/这里的话,再上传BING的XLM验证文件会更合适。当然这是我个人的理解与实践结果。

          3. 使用Ventoy制作Windows To Go:一个U盘搞定所有系统,随身携带你的PC

            使用Ventoy制作Windows To Go:一个U盘搞定所有系统,随身携带你的PC

            (清了清嗓子,拍了拍桌子)哎,各位朋友,我是李哥!今天咱们不聊虚的,就说说怎么把Windows系统塞进U盘里,让你走到哪儿都像带着“移动网吧”——这玩意儿叫Windows To Go,绝对是打工人、学生党的救命神器!

            为啥要搞这玩意儿?​想象一下:公司电脑卡成PPT、学校机房软件不全、出差不敢用酒店公共电脑……这时候你掏出U盘,插上任何电脑,直接启动自己熟悉的Windows系统——软件、文件、浏览器记录全在兜里,隐私安全还拉满!李哥当年就是靠这招,在网吧边吃泡面边改完了毕业论文(别问,问就是热血青春)

            准备家伙事儿!(硬件门槛)

            1. U盘别抠门:至少64GB起步,读写速度要快(推荐USB 3.0以上),否则装系统慢到你想砸电脑。李哥用过某顿的普通U盘,结果安装6小时,开机转圈半小时……(血泪教训!)
            2. 系统镜像:去微软官网下个正经的Windows 10/11企业版或教育版ISO文件(其他版本可能不支持)。
            3. 工具软件:推荐WTG辅助工具ventoy,小白也能一键操作,比老辈分的“命令行敲代码”省心一百倍

             


            • 一、怎么在u盘上跑完整的windows呢?
              我们都知道,操作系统一定要操作……哦不对,常见的操作系统一定要在硬盘上跑。无论是固态硬盘也好,还是机械硬盘也罢,我们概念中的系统一定是装在电脑里的那个固定不动的硬盘上的。一般windows的默认安装位置就是机内的存储介质,并不能像linux那样直接在livecd里就能直接装在u盘上。
              其实windows to go的历史很久了,可以追溯到2011年:2011 年 4 月,Windows to go就已包含在泄漏的 Windows 8 Build 7850 版本中。同年 9 月,微软在 Build 大会上正式公布了此功能,并分发了预装该系统的 32GB 启动 U 盘。它起初适配 Windows 8 企业版,后续拓展支持 Windows 8.1 及 Windows 10 的企业版、教育版,Windows 10 1607 版本及之后的专业版也纳入适配范围。
              但是,到了 2019 年 的 Windows 10 1903 版本发布时,微软宣布停止对其开发,2020 年 Windows 10 2004 版本中该功能被正式移除,缘由是它不支持功能更新,且所需的特定类型 USB 设备也逐渐不再被 OEM 厂商支持。
              不过这个功能确实非常方便,也吸引很多大佬来研究、发展Windows to go。其中最具有代表性的就是萝卜头IT论坛的WTG辅助工具,以及edgeless工具。今天我们暂时不用这两个工具,教大家直接手动在ventoy上部署windows to go!
              今天我们就来制作一个既能用ventoy,还能启动完整windows的u盘。了解了我们今天的任务,我们现在就可以开始教学了!
              哦对了,在看完文章后,如果手痒难耐想要实践一把,不要忘记领取文末的关键词哦!

            • 二、制作wintogo镜像并导入u盘
              首先,我们先需要下载想要安装的windows版本镜像。这里我推荐各位使用企业版windows的ltsc2019版本,ltsc企业版的镜像包相对于家庭版、专业版的镜像而言会精简一些,而且这些被精简掉的功能——比如xbox中控、microsoft商店等——基本不会影响正常的使用。假如你在ltsc上运行某些软件,碰到了诸如“xxx.dll”缺失的问题,一般直接百度就可以了,一般都很容易找到答案。
              如果你和我一样是个懒人,那么直接用现成的iso镜像包就可以了。如果你是个有极客精神的弗雷尔卓德人,把电脑当哥们,就喜欢折腾它,那么你可以使用一些经过民间优化的wim、esd格式的优化版本镜像,甚至你可以把自己正在用的操作系统封装成一份wim做成wintogo——虽然我并不推荐这么做,很有可能出现驱动冲突的情况。
              这里我们就先来点简单的,直接用现成的LTSC2019来进行演示。
              不想开网页下镜像也不要紧,罗某人为各位整理了一些常用的windows版本镜像包,在文末就能看到关键词了哦!
              好,现在我们打开电脑,右键此电脑——显示更多选项——管理,点击磁盘管理。
              来到这个页面没有?我们点开右侧的更多操作,选择创建VHD,将硬盘格式改为VHDX,类型设为“动态扩展”,然后随便把它放到哪里,大小随便设,别太小就行。这里我就设个100g就行了。
              然后你的窗口底部就会出现一个新的磁盘了!右键那个新建的磁盘x,选择初始化,初始化成GPT分区表,点击确定。
              接下来再右键磁盘x右侧的黑色条条,点击“新建简单卷”,这里我建议新手直接全部按照默认参数创建分区,无脑点下一步直到分区创建完成即可。
              这样就能看到那个黑色的框框变成蓝色的框框了!
              好,创建虚拟磁盘这一步我们就完成了。下一步我们要用到一个新工具,是俄罗斯人做的一个windows系统安装工具,叫做winntsetup。使用它,我们就可以非常方便地安装windows了。同样,这个工具会一并放在文末的关键词里。
              一看这个网页风格就非常程序员,一点多余的装饰都没有:
              打开程序后,我们首先点击第一行“选择windows安装源”,选择我们下载好的镜像,第二行选择一个EFI System(ESP)分区类型的分区即可;第三行就是我们的系统安装位置,选择虚拟磁盘即可。
              接下来我们点击安装,将引导代码切换为“不更新引导代码”,点击确定,坐着等就行了。
              好,在安装完成后,会跳出一个弹窗,询问你要不要重启,这时候我们重启,进行一下系统的初始化。
              这个应该不用我教吧?
              在激活系统后,我们可以进行下一步了:导入ventoy。

            • 三、配置ventoy,启动wintogo
              安装ventoy的流程就不再赘述了,各位可以乘坐文章开头的传送门前往学习。首先,我们在ventoy的根目录下创建一个名为“ventoy”的文件夹,然后在官网下载ventoy用以启动vhd的插件:ventoy_vhdboot.img。找不到也不要紧,文末有的。
              如果各位在官网下的话,会得到一个压缩包,里面有2个版本的插件文件,一般我们选win10based的那个版本即可。
              解压完后,我们直接把解压得到的ventoy_vhdboot.img放到我们刚刚创建的ventoy文件夹里——注意,一定是文件夹里面,而不是外面。
              然后呢?快点想想我们刚刚做了什么?对了!创建了个vhdx虚拟磁盘嘛!此时我们把这个vhdx文件复制粘贴到ventoy盘里面——不是文件夹里面!然后……重启电脑,启动ventoy!
              在ventoy里面找到我们的vhdx文件,启动它!不出意外的话……会不出意外地,成功了!
            • 四、enjoy!记得装驱动哦。
              对了,不要学我用一半拔u盘,容易蓝屏,我是为了拍封面才拔的。哦对了,拔下来一会再把u盘插上,系统就会继续正常工作哦。

             

          4. 为Hexo博客铺路:Windows匠心配置NodeJS环境的安装

            为Hexo博客铺路:Windows匠心配置NodeJS环境的安装

            想要栽种Hexo这朵静态博客的繁花,必先悉心培育Node.js这方土壤。本篇手记详述了从获取种苗(下载)、择地而植(安装),到修渠引水(环境变量配置)的全过程。三分诗意留给想象,七分严谨付诸实践,愿你的博客花开满枝。

            一、进入官网地址下载安装包

            安装最近包兼容性方面要好些,这里我选择的是[Windows系统]、64位

            Tips:如果想下载指定版本,点击【以往的版本】,即可选择自己想要的版本下载

            二、安装程序

            (1)下载完成后,双击安装包,开始[安装Node.js]

            (2)直接点【Next】按钮,此处可根据个人需求修改安装路径,修改完毕后继续点击【Next】按钮

            (3)可根据自身需求进行,此处我选择默认安装,继续点击【Next】按钮

            (4)不选中,直接点击【Next】按钮

            Tip:这是Node.js官方安装程序的推荐选项(默认已勾选),自动安装编译原生模块所需的完整工具链(Python、Visual Studio构建工具),避免后续开发中遇到”node-gyp”编译错误的问题。特别适合需要安装带有C++扩展的npm包(如bcrypt、sqlite3等)。因为我的系统已经您的系统已经安装了完整的Visual Studio和Python开发环境,所以没选这个。

            (5)点击【Install】按钮进行安装

            (6)安装完毕,点击【Finish】按钮

            (7)测试安装是否成功,按下【win+R】键,输入cmd,打开cmd窗口

            node -v     // 显示node.js版本
            npm -v     // 显示npm版本

            成功显示版本说明安装成功

            三、环境配置

            (1)找到安装的目录,在安装目录下新建两个文件夹【node_global】和【node_cache】

            (2)创建完毕后,使用管理员身份打开cmd命令窗口(打开方法见下方Tips),输入

            ①npm config set prefix “你的路径\node_global” (复制你刚刚创建的“node_global”文件夹路径)

            npm config set prefix "E:\Program Files\nodejs\node_global"  

            ②npm config set cache “你的路径\node_cache” (复制你刚刚创建的“node_cache”文件夹路径)

            npm config set cache "E:\Program Files\nodejs\node_cache"

            Tips: 使用管理员身份运行cmd的方法 :点击左下角【开始】菜单,在搜索区域输入“命令提示符”,然后点击【以管理员身份运行】

            或单击鼠标右键选择【以管理员身份运行】

            (3)配置环境变量

            ①【此电脑】-单击右键-【属性】-【高级系统设置】-【环境变量】

            ② 在【系统变量】中点击【新建】

            变量名:NODE_PATH

            变量值:E:\Program Files\nodejs\nodejs\node_global\node_modules

            然后你就会发现【node_global】里多出了一个【node_modules】文件夹,Tips: 如果输入变量值之后没有自动创建【】文件夹,就在【node_global】下手动创建一个【node_modules】文件夹,再复制你创建的【node_modules】文件夹的路径地址到变量值

            ③编辑【用户变量】中的【Path】

            ④将默认的 C 盘下【 AppData\Roaming\npm 】修改成 【node_global】的路径,点击确定

            ⑤在【系统变量】中选择【Path】点击【编辑】添加【%NODE_PATH%】,随后一直点击【确定】

            接下来是安装HEXOLeePoet实操快速上手:Hexo静态博客搭建全攻略

          5. 告别全家桶:手把手教你纯净安装并自定义Microsoft Office​

            告别全家桶:手把手教你纯净安装并自定义Microsoft Office​

            对于追求效率和控制的用户来说,图形界面安装程序远非最佳选择。本文将深入探讨如何运用microsoft office Deployment Tool (ODT) 这一命令行利器,通过编辑XML配置文件,实现Office的大规模、可重复且高度定制化的部署。无论你是系统管理员还是技术爱好者,这都将是你管理Office安装的终极参考。

            一、下载并安装Office Deployment Tool(ODT)​​

            下载ODT​​​​:访问微软官方网站下载Office Deployment Tool。下载完成后,会得到一个自解压文件(如officedeploymenttoolxxxx.exe)。Office 部署工具 (ODT) 是一个命令行工具,可用于下载即点即用版本的 Office(例如 Microsoft 365 企业应用版)并将其部署到客户端计算机。下载完成之后会得到officedeploymenttoolxxxx.exe的文件

            先不要着急安装。在C盘创建个文件夹比如就叫offices,然后双击刚才下载的.exe文件,下面有个接受条款和协议的框框勾选上后继续,然后需要选择刚才创建的文件夹。确定后,看到弹出 Files extracted successfully表示下载工具准备就绪。

            ​安装ODT​​​​:在C盘或其他指定位置创建一个文件夹(如offices)。双击下载的自解压文件,勾选接受条款和协议,然后选择刚才创建的文件夹作为解压目录。解压成功后,文件夹内会有setup.exe和示例XML文件(如configuration-Office365-x64.xml)。导出Config.xml的配置文件之后将配置文件复制到刚才新建的offices的文件夹中。

            1. 系统是64位的,打开configuration-Office365-x64.xml
            2. 系统是32位的,打开configuration-Office365-x86.xml

            二、生成自定义配置文件​

            因为默认是安装的365的商业英文版和Visio的英文版的全家桶。这里就需要官方的自定义配置文件来定制所需要的组件 Microsoft 365 Apps admin center (office.com)在这里选择创建新的配置 ​

            访问配置页面:打开微软提供的Office配置页面(如https://config.office.com/deploymentsettings)。

            选择Office版本:根据需求选择Office的版本(如Office LTSC Professional Plus 2024 – Version License)、体系结构(x64或x86)、应用程序、语言包等。

            若只安装Office的话就在 “产品*” 栏选 “Office LTSC Professional Plus 2024-Volume License” 这一项就行,其它不用管。然后继续向下 “更新频道和版本” 默认就行。再往下就是“应用” 这个也是按需选择。

            设置安装选项

            【语言】选简中,然后下一个。

            【安装】选Office 内容分发网络

            【更新和升级】**按需选择,如果之前有安装过MSI版本的,默认都选上。

            剩下的【授权和激活】【常规】【应用程序首选项】均默认即可,最后点完成之后,再点右侧的导出按钮,将配置导出

            导出配置文件:设置完成后,点击页面右上角的“导出”按钮,将配置文件导出为XML格式(如config.xml),并保存到ODT的安装目录下。

            三、使用ODT进行定制化安装​​

            准备安装环境:将导出的XML配置文件复制到ODT的安装目录下,与setup.exe文件放在一起。导出Config.xml之后,将这个配置文件复制到刚才第一步新建的offices的文件夹中。可以删去configuration-Office365-xxx.xml的文件(我们导出的配置文件就是代替这个的),此时文件夹应该只有这两个文件:setup.exeConfig.xml

            执行安装命令:

            以管理员身份运行命令提示符(CMD)或Windows PowerShell。

            使用cd命令切换到ODT的安装目录(如cd C:\offices)。(例如在E盘根目录下新建的Offices文件夹,需要先后执行 cd E:\officesE:两个命令;如果是在C盘创建的文件夹,则不需要第二个命令)。

            然后再输入以下命令并回车执行(假设配置文件名为Config.xml):

            下载命令:setup /download Config.xml

            下载完成之后执行安装命令:setup /configure Config.xml

            等待安装程序自动下载并安装Office,安装过程中命令窗口会显示进度,请勿关闭。

            完成安装:安装完成后,命令提示符窗口会显示相应提示。关闭窗口等安装完毕之后,先不要着急打开office。

            激活KMS命令激活Office2016方法​

            打开Windows PowerShell,先cd..到C盘,再cd到Office2016安装目录下:
            ①32位系统装32位office或者64位系统装64位office命令:
            cd “C:\Program Files\Microsoft Office\Office16”
            ②64位系统装32位office命令:
            cd “C:\Program Files (x86)\Microsoft Office\Office16”
            执行命令:
            cscript ospp.vbs /inpkey:XQNVK-8JYDB-WJ9W3-YJ8YR-WFG99
            【Office Professional Plus 2016:XQNVK-8JYDB-WJ9W3-YJ8YR-WFG99】
            【Office Standard 2016:JNRGM-WHDWX-FJJG3-K47QV-DRTFM】

            执行命令,设置kms服务器;
            cscript ospp.vbs /sethst:kms.03k.org
            执行命令,激活office2016;
            cscript ospp.vbs /act
            如果要查询office2016激活状态,执行命令:
            cscript ospp.vbs /dstatus

            备选的KMS
            kms.03k.org
            kms.chinancce.com
            kms.luody.info
            kms.lotro.cc
            kms.luochenzhimu.com
            kms8.MSGuides.com
            kms9.MSGuides.com