一键部署开源PaaS服务Dokploy,代替Vercel, Netlify 以及 Heroku

2024-06-22 22:36

本文主要是介绍一键部署开源PaaS服务Dokploy,代替Vercel, Netlify 以及 Heroku,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

Vercel, Netlify 以及 Heroku都是知名的PaaS(Platform as a Service|平台即服务)服务商,利用这些平台我们可以方便快捷的进行项目部署。尤其是各家生态完善,是很多独立开发者的首选之地。

但是随之而来的就是另外的隐患了:因为各种问题导致项目使用额度超标导致的天价账单

PaaS作为服务商基本上都是属于没有访问限制的说法,用户激增、代码错误、恶意CC攻击都有可能在极短的时间内产生巨额的账单。比如

该用户首次部署服务,却因为一个小小的程序错误导致6个小时内产生三千刀的账单。如果不是发现的及时,可能还会造成更大的损失。虽然经过来回的协商,最终Vercel还是免除了这个账单,但是这名用户已经决定放弃继续使用Vercel了,因为如果再来一次这种事件,很难说是否还会被免单。

一般常见的云厂商的实例只要做好服务器的安全防范措施,最大的危险也只是停机、流量超额罢了,流量方面可以通过限制访问速率等措施避免,或者监控服务器流量异常,都是很容易实现的。但是使用VPS/云服务器之类的相对于PaaS平台来说CI/CD之类的相对麻烦很多。
所以在VPS/云服务器上部署一个开源的PaaS服务相较而言就能较好的结合这两者之间的优点了。

Dokploy简介

引用自官网:
Dokploy是一个免费的可自托管平台即服务(PaaS),简化了应用程序和数据库的部署和管理。
特点
Dokploy包括多种功能,让您的生活更轻松。

应用程序:部署任何类型的应用程序(Node.js、PHP、Python、Go、Ruby等)。
数据库:创建并管理支持MySQL、PostgreSQL、MongoDB、MariaDB和Redis的数据库。
备份:自动将数据库备份到外部存储目标。
Docker Compose:原生支持Docker Compose来管理复杂应用程序。
多节点:使用docker swarm将应用程序扩展到多个节点以管理集群。
模板:一键部署开源模板(Plausible,Pocketbase,Calcom等)。
Traefik集成:自动与Traefik集成进行路由和负载均衡。
实时监控:监视每个资源的CPU、内存、存储和网络使用情况。
Docker管理: 轻松部署和管理Docker容器.
CLI (即将推出⌛) : 使用命令行管理您的应用程序和数据库.
自托管: 在您的VPS上自托管 Dokploy。

Github: Dokploy

官网:dokploy.com/

目前该项目还在快速迭代之中,基本上每周都会有一两个小版本更新

部署

要求:

服务器硬件:2C2GB起步 硬盘30GB以上

支持系统:

  • Ubuntu 24.04 LTS
  • Ubuntu 23.10
  • Ubuntu 22.04 LTS
  • Ubuntu 20.04 LTS
  • Ubuntu 18.04 LTS
  • Debian 12
  • Debian 11
  • Fedora 40
  • Centos 9
  • Centos 8

安装会安装docker,如果服务器内原先没有docker,则会自动启动安装。由于国内docker服务的公开镜像都没有了,所以如果要在国内服务器上安装可以先自己安装docker,然后再运行安装脚本。海外服务器正常步骤即可。

演示服务器为腾讯云的轻量服务器2C4G80GB,同款服务器购买

如果是国内服务器请选择系统镜像时选择使用容器镜像–然后选择Debian或者Ubuntu系统

这样docker就会默认配置使用腾讯云的内网镜像

非常方便,海外服务器随便。

运行脚本

curl -sSL https://dokploy.com/install.sh | sh

由于是内网镜像所以拉取速度很快,一分钟左右就会出现完成提示,趁着15秒系统启动时间,我们先去打开服务器的3000端口以便后续访问。

配置防火墙规则

平台设置

这个没啥好说的,直接设置就行。首次完成后就默认是管理员了。

进入管理面板后是这样的:

这是系统监控:

这是Traefik:

这是docker管理;

图中的docker是我之前玩幻兽帕鲁安装的服务器镜像。

设置页面

设置页面其他的可以自己探索,这里简单推荐一下优先考虑设置的。
Server Domain内的域名,证书申请邮箱,证书提供商这三个建议都填上。

Profile内的账户也可以考虑开启2fa

避免账户被盗

最后一个集群,需要的可以自己尝试一下,也很简单,只需要加一个自己的registry即可。

个人建议直接开一个自托管的。

项目创建及部署

这个也很简单。

创建项目——创建服务即可

数据库支持5种:PostgreSQL、MongoDB 、MariaDB、 MySQL、 Redis

Compose支持docker Compose和Stack

官方提供的模板目前只有三个:

Pocketbase 是 Firebase 的自托管替代方案,允许您构建和托管自己的后端服务。
Plausible是一个开源的、自托管的网络分析平台,可以让您跟踪网站流量和用户行为。
Calcom是Calendly的开源替代品,允许创建日程安排和预订服务。

创建自己的第一个应用

示例:https://github.com/Dokploy/next-todo-app

由于这是一个公开的git项目所以我们只需要在Provider选择Git即可,自己的私有项目可以设置好个人设置内的Github相关项创建APP——授权APP

设置完成后点击deploy即可

你可以进入Deployments——view查看项目部署进展

项目右上角显示黄色的点表示运行中,可以用来判断是否完成

项目部署完成后可以点击logs查看log输出,
想要更改项目的资源占用可以点击Advanced——Resources设置|

域名设置也是按照要求设置即可

不过由于没有对接DNF解析商,所以我们需要自己添加解析,证书是自动申请的。

应用部署完成后会显示:

之后直接访问前面解析的地址即可。

注意事项:

国内的服务器要注意一下应用是不是会大量拉取海外的资源。推荐是在项目中先设置好npm,pnpm,yarn之类的镜像源。这样部署会快很多。不然可能受网速影响,首次部署要耗费大量时间。

总结

如果是成熟的项目,且不对外开放或者使用人数很少的项目还是可以放在Vercel的,免费的层级已经能够覆盖大部分小项目了。

能够承担起vercel之类的月费以及超额费用的也可以继续使用,毕竟生态完善,开发起来配套设施齐全。

价格敏感型用户或者害怕天价账单或者本身就有VPS的可以考虑部署一个Dokploy尝试尝试的。部署难度低,适配性较好。

这篇关于一键部署开源PaaS服务Dokploy,代替Vercel, Netlify 以及 Heroku的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1085607

相关文章

闲置电脑也能活出第二春?鲁大师AiNAS让你动动手指就能轻松部署

对于大多数人而言,在这个“数据爆炸”的时代或多或少都遇到过存储告急的情况,这使得“存储焦虑”不再是个别现象,而将会是随着软件的不断臃肿而越来越普遍的情况。从不少手机厂商都开始将存储上限提升至1TB可以见得,我们似乎正处在互联网信息飞速增长的阶段,对于存储的需求也将会不断扩大。对于苹果用户而言,这一问题愈发严峻,毕竟512GB和1TB版本的iPhone可不是人人都消费得起的,因此成熟的外置存储方案开

AI一键生成 PPT

AI一键生成 PPT 操作步骤 作为一名打工人,是不是经常需要制作各种PPT来分享我的生活和想法。但是,你们知道,有时候灵感来了,时间却不够用了!😩直到我发现了Kimi AI——一个能够自动生成PPT的神奇助手!🌟 什么是Kimi? 一款月之暗面科技有限公司开发的AI办公工具,帮助用户快速生成高质量的演示文稿。 无论你是职场人士、学生还是教师,Kimi都能够为你的办公文

阿里开源语音识别SenseVoiceWindows环境部署

SenseVoice介绍 SenseVoice 专注于高精度多语言语音识别、情感辨识和音频事件检测多语言识别: 采用超过 40 万小时数据训练,支持超过 50 种语言,识别效果上优于 Whisper 模型。富文本识别:具备优秀的情感识别,能够在测试数据上达到和超过目前最佳情感识别模型的效果。支持声音事件检测能力,支持音乐、掌声、笑声、哭声、咳嗽、喷嚏等多种常见人机交互事件进行检测。高效推

【区块链 + 人才服务】可信教育区块链治理系统 | FISCO BCOS应用案例

伴随着区块链技术的不断完善,其在教育信息化中的应用也在持续发展。利用区块链数据共识、不可篡改的特性, 将与教育相关的数据要素在区块链上进行存证确权,在确保数据可信的前提下,促进教育的公平、透明、开放,为教育教学质量提升赋能,实现教育数据的安全共享、高等教育体系的智慧治理。 可信教育区块链治理系统的顶层治理架构由教育部、高校、企业、学生等多方角色共同参与建设、维护,支撑教育资源共享、教学质量评估、

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提

【区块链 + 人才服务】区块链集成开发平台 | FISCO BCOS应用案例

随着区块链技术的快速发展,越来越多的企业开始将其应用于实际业务中。然而,区块链技术的专业性使得其集成开发成为一项挑战。针对此,广东中创智慧科技有限公司基于国产开源联盟链 FISCO BCOS 推出了区块链集成开发平台。该平台基于区块链技术,提供一套全面的区块链开发工具和开发环境,支持开发者快速开发和部署区块链应用。此外,该平台还可以提供一套全面的区块链开发教程和文档,帮助开发者快速上手区块链开发。

K8S(Kubernetes)开源的容器编排平台安装步骤详解

K8S(Kubernetes)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。以下是K8S容器编排平台的安装步骤、使用方式及特点的概述: 安装步骤: 安装Docker:K8S需要基于Docker来运行容器化应用程序。首先要在所有节点上安装Docker引擎。 安装Kubernetes Master:在集群中选择一台主机作为Master节点,安装K8S的控制平面组件,如AP

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX

在 Windows 上部署 gitblit

在 Windows 上部署 gitblit 在 Windows 上部署 gitblit 缘起gitblit 是什么安装JDK部署 gitblit 下载 gitblit 并解压配置登录注册为 windows 服务 修改 installService.cmd 文件运行 installService.cmd运行 gitblitw.exe查看 services.msc 缘起