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 mysite
Deploy to production (zero downtime)
ferryboat deploy
Deploy to staging
ferryboat deploy --staging
Backup before deploy
ferryboat backup
Restore a backup
ferryboat restore
View 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.com
Secrets (like Docker or GitHub tokens) should be set as environment variables.
π Development
After checking out the repo:
bin/setup
Run tests with:
rake spec
Try the interactive console:
bin/console
Release 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.