展示 HN:Disco – 我希望几年前就能存在的自托管平台
大家好,过去一年半以来,我和我的联合创始人Antoine一直在开发Disco,这是一款开源部署平台,允许您在单台服务器上托管多个Web应用程序:<a href="https://disco.cloud/" rel="nofollow">https://disco.cloud/</a>
<p>在厌倦了像Heroku和Render这样的平台高昂的项目定价,并对Kubernetes的复杂性感到沮丧后,我们创建了一个平台,具备商业解决方案的所有精致和便利,但作为一个开源项目,您可以在任何地方运行。Disco为您提供了流畅的体验(即干净的命令行界面和Web用户界面),同时享有自托管的自由和经济性。</p>
<p>主要特点:</p>
<ul>
<li>从GitHub部署,快速的部署时间 - 从git push到上线,我们的主要静态网站在2秒内完成部署(真的);一个中等规模的Django应用大约在25秒内完成部署。</li>
<li>在单台服务器上托管多个项目,与按项目定价相比,成本降低50%以上。</li>
<li>支持Node、Rust、Python、Django、Rails、静态网站等多种技术。</li>
<li>为不需要企业级功能的项目提供“足够好的”Postgres。</li>
<li>使用API密钥进行团队访问,而不是SSH密钥管理。</li>
<li>可以在您自己的基础设施上运行 - 从云虚拟机到树莓派,再到本地部署。</li>
<li>内置水平扩展 - 添加服务器以分担负载并增加容量。</li>
<li>可选地,让我们为您管理基础设施:相同的开源堆栈,但减少了管理的麻烦。</li>
</ul>
<p>一个实际案例:我们将高流量网站idealist.org的预发布环境从Heroku迁移到Disco,使用单台每月50美元的服务器,现在托管6个预发布环境。在Heroku上,每个环境的费用为500美元/月(总计3000美元)。我们还将Idealist的所有生产前端SSR渲染迁移到Disco,以更低的成本获得更好的稳定性。</p>
<p>我个人将我的一些爱好网站迁移到了家里的树莓派上,为我节省了数百美元,这些应用之前是在Heroku和Render上托管的。您可以查看我在Recurse Center的(不理智的)Localhost演讲,了解更多信息 - <a href="https://www.youtube.com/watch?v=z2lP7C8VT6M" rel="nofollow">https://www.youtube.com/watch?v=z2lP7C8VT6M</a></p>
<p>说到Recurse,我们在那里托管了一个“社区”Disco安装,即一个共享的8Gb树莓派,目前托管着52个(静态/后端/go/python/rust等)Web项目。这也是一个有趣的用例!</p>
<p>总结:Disco非常适合DIY自托管者和寻求更具成本效益的部署平台的团队。现在可以自托管(免费且开源)或作为托管服务使用。</p>
<p>试试看 <a href="https://disco.cloud/" rel="nofollow">https://disco.cloud/</a>,欢迎在这里或我们的Discord上告诉我们您的想法。谢谢!</p>
查看原文
Hey HN, for the past 1.5 years my cofounder Antoine and I have been building Disco, an Open Source deployment platform that lets you host multiple web apps on a single server: <a href="https://disco.cloud/" rel="nofollow">https://disco.cloud/</a><p>After getting tired of high per-project pricing on platforms like Heroku and Render, and frustrated with Kubernetes' complexity, we created a platform with all the polish and convenience of commercial solutions, but as an Open Source project you can run anywhere. Disco gives you a streamlined experience (ie a clean CLI and web UI) with the freedom and economics of self-hosting.<p>Key features:<p>- Deploy from GitHub with fast deployment times - from git push to being live, our main static site deploys in 2 seconds (really); a medium sized Django app deploys in ~25 seconds<p>- Host multiple projects on a single server, cutting costs by 50%+ compared to per-project pricing<p>- Works with Node, Rust, Python, Django, Rails, static sites, and more<p>- Includes "good enough" Postgres for projects that don't need enterprise features<p>- API keys for team access instead of SSH key management<p>- Run on your own infrastructure - from cloud VMs to Raspberry Pis to on-prem<p>- Built-in horizontal scaling - add servers to distribute the load and increase capacity<p>- Optionally, let us manage the infra for you: same Open Source stack, but less to worry about<p>A real-world example: We moved idealist.org 's staging environments, a highly trafficked site, from Heroku to Disco on a single $50/month server, which now hosts 6 staging environments. On Heroku, each would have cost $500/month ($3k total). We also moved all of Idealist's production frontend SSR rendering to Disco, getting better stability at 1/5th of the cost.<p>I personally moved a number of my hobby sites to a Raspberry Pi that sits at home, saving me hundreds for apps that used to be at Heroku and Render. See my (unhinged) Localhost talk at the Recurse Center about this - <a href="https://www.youtube.com/watch?v=z2lP7C8VT6M" rel="nofollow">https://www.youtube.com/watch?v=z2lP7C8VT6M</a><p>Speaking of Recurse, we host a "community" Disco installation there i.e. a shared 8Gb Raspberry Pi that's hosting 52 (static/backend/go/python/rust, etc.) web projects at the time of this writing. That's also a fun use case!<p>TLDR: Disco is perfect for both DIY self-hosters and teams looking for a more cost-effective deployment platform. Available now for self-hosting (free and Open Source) or as a managed service.<p>Try it out <a href="https://disco.cloud/" rel="nofollow">https://disco.cloud/</a> and let us know what you think here or on our Discord. Cheers!