Ferryboat βοΈ
Ferryboat is a lightweight deployment tool built by 21tycoons for teams who want zero-downtime deployments for marketing/static sites without the complexity of Kubernetes or heavyweight DevOps stacks.
Itβs designed for marketing sites, micro-apps, and fast-moving projects that need confidence in production while staying simple, portable, and developer-friendly.
β¨ Features
- Zero-downtime deployments (blue/green swap, even on a single server)
- Staging environments baked in
- Lightweight backups of container volumes
- GitHub integration for pulling and building images
- Simple CLI
-
Config-driven via
ferryboat.yml
π¦ Installation
Add to your Gemfile:
gem "ferryboat"Or install directly:
gem install ferryboatπ Usage
Create a new project
ferryboat new mysite
cd mysiteDeploy to production (zero downtime)
ferryboat deployDeploy to staging
ferryboat deploy --stagingBackup before deploy
ferryboat backupRestore a backup
ferryboat restoreView logs
ferryboat logsβοΈ Configuration
Example ferryboat.yml:
production:
server: 203.0.113.42
ssh_key: ~/.ssh/myserver
repo: git@github.com:21tycoons/mysite.git
docker_registry: 21tycoons/mysite
domain: mysite.com
staging:
server: 203.0.113.42
ssh_key: ~/.ssh/myserver
repo: git@github.com:21tycoons/mysite.git
docker_registry: 21tycoons/mysite-staging
domain: staging.mysite.comSecrets (like Docker or GitHub tokens) should be set as environment variables.
π Development
After checking out the repo:
bin/setupRun tests with:
rake specTry the interactive console:
bin/consoleRelease a new version:
bundle exec rake releaseπ€ Contributing
Bug reports and pull requests are welcome at
π https://github.com/21tycoons/ferryboat
π License
Released under the MIT License. See LICENSE for details.
π’ Ferryboat by 21tycoons β simple, safe deployments without the complexity.