Dokku平台即服务(PaaS)入门指南
2025-07-05 04:46:44作者:秋泉律Samson
什么是Dokku?
Dokku是一款轻量级、可扩展的开源PaaS平台,能够在单台服务器上运行。它通过简单的git push操作,就能自动构建和部署应用程序。Dokku支持两种构建方式:
- 使用Dockerfile进行自定义构建
- 通过Buildpacks自动检测应用语言环境
部署完成后,Dokku会自动管理容器生命周期,包括:
- 使用nginx自动路由Web请求
- 管理后台进程
- 处理定时任务(cron)
系统要求
基础要求
- 操作系统(全新安装):
- Ubuntu 20.04/22.04/24.04
- Debian 11+ x64版本
- 服务器架构:
- AMD64(x86_64):常见于Intel云服务器
- ARMV8(arm64):适用于树莓派和AWS Graviton
推荐配置
- 内存:至少1GB(低于1GB需特殊配置)
- 域名:建议至少绑定一个域名(非必须但强烈推荐)
域名配置建议
- 通配符域名(*.example.com):可通过app1.example.com访问应用
- 单域名(example.com):通过example.com:随机端口访问
安装最新稳定版
第一步:安装Dokku核心组件
执行以下命令进行安装(以Debian系为例):
# 下载安装脚本
wget -NP . https://dokku.com/install/v0.35.20/bootstrap.sh
# 执行安装(指定版本号)
sudo DOKKU_TAG=v0.35.20 bash bootstrap.sh
安装过程通常需要5-10分钟,具体取决于网络速度。
第二步:基础配置
安装完成后,需要进行两项关键配置:
- 添加SSH密钥:
# 将现有SSH密钥添加到Dokku
cat ~/.ssh/authorized_keys | dokku ssh-keys:add admin
- 设置全局域名:
# 使用真实域名
dokku domains:set-global yourdomain.com
# 或使用服务器IP
dokku domains:set-global 192.168.1.100
# 或使用sslip.io服务(开发测试用)
dokku domains:set-global 192.168.1.100.sslip.io
第三步:部署第一个应用
完成上述配置后,就可以开始部署应用了。Dokku支持多种部署方式,最简单的就是通过git push:
# 添加远程仓库
git remote add dokku dokku@your-server:app-name
# 推送代码
git push dokku main
进阶建议
- 内存优化:对于资源有限的服务器,建议配置swap空间
- 域名管理:生产环境建议使用真实域名并配置SSL证书
- 监控维护:安装后建议设置基础监控,如日志收集和资源警报
Dokku的轻量级特性使其成为个人开发者和中小团队的理想选择,既具备PaaS的便利性,又保持了服务器的完全控制权。通过简单的命令行操作,就能实现类似Heroku的开发体验。