Project

ferryboat

0.0
The project is in a healthy, maintained state
Ferryboat is a deployment solution for marketing/static sites focused on simplicity and reliability. It supports zero-downtime rollouts, staging environments, and basic volume backups. Designed to work with Docker and SSH, it helps teams deliver code safely to production without unnecessary complexity.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
 Dependencies

Runtime

~> 1.0
~> 1.3
 Project Readme

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.