ConvertX实战:十分钟部署自己的千种格式自托管文件转换服务

发布时间:2026/9/8 21:40:03

ConvertX实战:十分钟部署自己的千种格式自托管文件转换服务 ConvertX实战十分钟部署自己的千种格式自托管文件转换服务【免费下载链接】ConvertX Self-hosted online file converter. Supports 1000 formats ⚙️项目地址: https://gitcode.com/GitHub_Trending/co/ConvertX周五下午客户发来一批.mov素材而平台只收 mp4设计组还等着把一堆 PNG 压成 WebP。逐个拖进某个匿名在线转换网站文件到底去了哪台服务器心里没底——这就是我部署 ConvertX 的缘由一个自托管的在线文件转换工具一个容器装下 1000 种格式互转文件只在自己机器里流转。30 秒看懂它是什么一句话定位放在自己服务器上的在线文件转换器浏览器里上传、选格式、点转换、下载和用在线工具一样顺手但数据不出内网。一句话技术栈TypeScript Bun Elysia 写的 Web 服务底层挂接了 FFmpeg、ImageMagick、Pandoc 等 20 个转换引擎。它能接住哪些格式转换需求所有转换引擎的源码都在 src/converters/ 目录下每个引擎对应一个文件。按“你想干什么”看覆盖面大致如下你想做的事背后调用的引擎覆盖面输入→输出格式数视频音频互转mp4、mkv、mov、webm…FFmpeg约 472 → 约 199常见图片互转png、jpg、webp、tiff…ImageMagick245 → 183图片处理偏批量、偏多格式GraphicsMagick167 → 130图片与 HEIC/AVIF/WebP 等现代格式Vips45 → 23文档互转PDF、Word、Markdown、EPUB…Pandoc43 → 65Office 文档批量转换LibreOffice41 → 22电子书格式转换EPUB、MOBI…Calibre26 → 193D 模型格式互转Assimp77 → 23HEIF/HEIC 解码libheif2 → 4位图转矢量图Potrace / VTracer4 → 11 / 8 → 1Outlook .msg 邮件、.vcf 通讯录转 CSVmsgconvert / VCF 转换各 1 → 1完整清单见 README.md 的 Converters 表格。某个格式找不到对应引擎时它会在界面上明确提示“不支持”而不是给你一个坏文件。 最短路径跑起来一条 Docker 命令生产部署只需要一个服务。把下面这份最小配置存成docker-compose.ymlservices: convertx: image: ghcr.io/c4illin/convertx ports: - 3000:3000 volumes: - ./data:/app/data environment: - JWT_SECRET换成你自己的长随机字符串启动并验证docker compose up -d curl -I http://localhost:3000curl返回 200 即服务已就绪浏览器打开http://localhost:3000注册第一个账户即可开始用。两个常见的“第一次就踩中”的坑登录不了服务默认只接受 localhost 或 HTTPS。如果你是通过 HTTP 内网地址访问先设置HTTP_ALLOWEDtrue。提示 unable to open database file给挂载的数据目录补一下属主chown -R $USER:$USER ./data。仓库里的 compose.yaml 是开发调试用的完整示例所有环境变量注释都写在里面可对照参考。第一次上手照这个顺序做注册第一个账户。注意第一个注册的人直接“坐稳”管理位所以别把未配置好的服务直接暴露在公网——这是 README 专门提醒过的。上传文件在上传页拖入或点选支持一次加多个文件。选目标格式界面不会甩给你一整个格式库而是按“这个文件实际能转去哪”分组列出。比如传一个 PDF你会看到 vips、graphicsmagick 等可选目标搜索框支持直接输入格式名过滤。转换并查看状态多个文件会被分批处理单批并发上限由MAX_CONVERT_PROCESS控制默认 0 即不限制每个文件的处理结果会写入数据库随时可以在 History 页翻账。下载转换后的文件沿用原文件名、只改扩展名从界面直接拿走。提醒一句默认策略下文件只保留约 24 小时见下节别攒着不下载。多账户、密码保护是内置的JWT 签发登录态各账户的文件与历史互不可见团队共用一个实例没有问题。 什么时候才需要动环境变量全部环境变量都是可选的先跑起来再按下面的“触发条件”补配置即可遇到什么情况改哪个默认值想稳妥固定登录态避免重启后换 keyJWT_SECRET不设置则每次随机生成希望同事能自行注册账户ACCOUNT_REGISTRATIONfalse仅 HTTP 访问无 HTTPS 的内网场景HTTP_ALLOWEDfalse想给未登录访客直接开放使用自助终端式ALLOW_UNAUTHENTICATEDfalse磁盘上转换产物越攒越多AUTO_DELETE_EVERY_N_HOURS240 表示关闭清理一批大文件把机器打满MAX_CONVERT_PROCESS0不限制并发给 FFmpeg 加参数如 GPU 硬解、更快的编码预设FFMPEG_ARGS/FFMPEG_OUTPUT_ARGS空网站想挂在子路径下如/convert/WEBROOT空隐藏 History 页HIDE_HISTORYfalse日期显示语言LANGUAGEen完整列表见 README.md 的 Environment variables 一节。想读源码或加自己的转换器扩展路径很短每个引擎文件都导出convert转换函数和properties支持的 from/to 格式集合照着 src/converters/ffmpeg.ts 这类实现写一份再到 src/converters/main.ts 的注册表里登记即可。仓库里带 “converter request” 标签的 issue 被官方点名是 easiest 的上手贡献文档和清理类 PR 也欢迎。本地起开发环境需先装好 Bun 和 Gitgit clone https://gitcode.com/GitHub_Trending/co/ConvertX cd ConvertX bun install bun run dev收尾ConvertX 的价值一句话把“把文件拖进别人服务器”的转换习惯变成“自己内网里的一个按钮”。跑起来之后下一步很自然——把它接进团队现有流程比如批量转码脚本、电子书流水线或者为只有你们在用的内部格式写一个专属转换器。【免费下载链接】ConvertX Self-hosted online file converter. Supports 1000 formats ⚙️项目地址: https://gitcode.com/GitHub_Trending/co/ConvertX创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/9/8 21:40:03

基于微信小程序的阅读平台源码调试与实战指南

不少刚接触微信小程序项目的朋友,一听到“源码文档调试”这三个词,第一反应是东西拿到手就能跑。真做起来才发现,能跑通和能讲清楚、能演示、能过答辩完全是两码事。我手上这套“基于微信小程序的微信阅读平台”,就是一个典型的课…

2026/9/8 21:40:03

完整KTransformers昇腾NPU部署实战

完整KTransformers昇腾NPU部署实战 【免费下载链接】ktransformers A Flexible Framework for Experiencing Heterogeneous LLM Inference/Fine-tune Optimizations 项目地址: https://gitcode.com/GitHub_Trending/ktr/ktransformers 你手上有一张 Atlas 300I A2 昇腾N…

2026/9/8 21:40:03

STM32F407配合CubeMX与HAL库驱动AD9959多通道DDS详解

简介:这套工程面向使用STM32F407ZGT6微控制器、CubeMX配置工具与硬件抽象层驱动库开发射频信号发生器的嵌入式开发者。工程整合AD9959四通道直接数字频率合成器控制逻辑,覆盖时钟树配置、通用输入输出引脚初始化和寄存器写入流程,可快速实现输…

2026/9/8 22:50:38

BMC固件工程师:服务器健康系统的底层调度者

1. BMC固件工程师不是“写BIOS的”,而是服务器健康系统的总调度员很多人第一次听说BMC(Baseboard Management Controller),下意识会把它和主板BIOS划等号——毕竟都跑在板子上、都带“固件”俩字、都能进底层。但这种类比就像把消…

2026/9/8 22:50:38

基于Qt5与hidapi的USB HID调试助手实现与避坑指南

简介:基于Qt5框架与hidapi库开发的一款Windows 10环境下的USB调试助手,定位为轻量级上位机工具,主要面向嵌入式开发者、硬件测试人员以及HID协议学习者,用于解决个人电脑与USB设备之间数据收发、设备枚举和可视化交互不便的问题。…

2026/9/8 22:50:38

树莓派Pico USB详解:从RP2040硬件原理到MicroPython实战

第一次把树莓派 Pico 插上电脑,很多人会被那个突然弹出的 RPI-RP2 磁盘骗到,以为它就是个 U 盘。实际上,这块板子上的 Micro-USB 口背后,是一整套 USB 1.1 设备控制器,而 MicroPython 固件默认把它做成了“虚拟串口 大…

2026/9/8 22:45:37

降AIGC实操指南:从检测原理到改写工具的全链路解析

我记得两年前第一次接触“降AIGC”这个概念时,圈子里的玩法还停留在手动换句式、塞连接词这种粗活上。到了2026年,情况完全不一样了——现在市面上的降AIGC网站已经发展成一整套从检测、改写、复测到人工润色的成熟链路,工具之间的分工也越来…

2026/9/8 7:15:10

超人会飞不算本事:系统稳定依赖清晰规则与边界设计

开头先不绕弯子。“#斯坦李吐槽dc 所以超人是无缘无故会飞的嘛哈哈哈哈哈哈哈锤哥真是技术人才啊!#雷神 #复联”这类调侃式短标题,第一波冲击力在于它把两个宇宙的角色塞进同一个吐槽箱里,但细想一下就能发现,它真正碰到的根本不是…

2026/9/8 7:15:15

超人VS蜘蛛侠:拆解超级IP的影响力与传播方法论

把“蜘蛛侠 vs 超人”放在 CSDN 上聊,可能很多人第一反应是走错片场了。但如果把这两个角色看成“两个持续运营了 80 多年的文化产品”,你会发现,这场比较本质上是两个不同 IP 策略的长期结果对比:超人赢在定义了整个超级英雄题材…

2026/9/8 7:15:10

基于CNN的调制信号识别:MATLAB实现时频图分类实战

简介:本资源是一套面向通信工程与信号处理方向学习者、研究者的深度学习实践方案,聚焦调制信号自动检测与识别这一典型无线通信任务,解决传统方法依赖人工特征、低信噪比下性能下降等痛点。压缩包共12个文件(10.73MB)&…

2026/9/8 0:01:49

踩多轮坑才跑通|OpenClaw 3.1.0 双平台本地 AI 自动化搭建实操实录

🔹 工具简述 OpenClaw 是一款备受开发者与办公人群青睐的开源本地智能工具,凭借离线本地运行、可视化图形面板、全流程自主任务处理三大核心特点,积累了众多忠实用户。与普通对话类 AI 产品不同,它能够直接调用电脑的软硬件操作权…

2026/9/8 0:01:50

拒绝复杂命令行,Hermes Agent 一键包快速解锁智能办公能力

🔍前言 不少想要体验 Hermes Agent 办公能力的使用者,往往会被复杂的环境配置拦住使用脚步。手动下载匹配依赖、反复调整系统目录、处理命令行持续报错、修复权限异常、补全丢失核心文件等一系列操作,对普通使用者而言门槛较高,很…

2026/9/7 16:23:03

USB Type-C PCB布局分区设计:电源、高速信号与PD协议全攻略

做硬件这行,Type-C接口算是典型的“看着简单,做起来全坑”的东西。光引脚就24个,高低速信号、电源、控制线全部塞在一个小小的连接器里,如果PCB布局不做规划,打样回来基本就是“插上没反应”、“高速掉线”、“静电一打…

2026/9/7 22:46:00

系统编程学习原型如何补齐稳定性边界

系统编程学习原型如何补齐稳定性边界预算有限时&#xff0c;我先优化明显多余的复制&#xff0c;而不是猜测性地换容器。用借用传递只读数据通常就能减少分配&#xff1a; fn parse(line: &str) -> Result<Item, Error> { /* ... */ }用基准确认热点确实在分配&am…

2026/9/7 22:45:59

雨花区哪家财务公司代理记账比较好?

在雨花区&#xff0c;企业处理财税事务常常面临诸多挑战&#xff0c;选择一家靠谱的财务公司至关重要。湖南巨勤财务管理咨询有限公司就是本地正规实体财税服务机构&#xff0c;深耕本地工商财税行业多年&#xff0c;熟悉当地工商局、税务局最新政策与申报流程。主营公司注册、…

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
咨询二维码