What's New

New updates and improvements to Hatchbox.io

Firewall Rules By Private IP Address

Update
We've updated our firewall rule management to handle firewall rules by private IP addresses in your cluster instead of subnets by default. 

This provides some added protection for servers in datacenters that don't use virtual private networks to separate servers by customer.

New default versions of Ruby 3.1.4 and Node.js 18.16.0

Update
We've updated our deploy script to install Ruby 3.1.4 and Node.js 18.16.0 for default versions. These were minor updates including bugfixes and no breaking changes. 

As always, if you'd like to use other versions, you can specify them in your repository by adding a .tool-versions file or .ruby-version and .node-version files.

🎉 Firewall Rule Management

New
We've introduced a new Firewall Rules tab on servers that you can use to customize the firewall rules for your servers.

Screenshot 2023-06-01 at 10.55.03 AM.png 320 KB

Hatchbox generates firewall rules automatically for your servers based upon their roles. For example, if you give a server the PostgreSQL role, we will automatically add a firewall rule to only allow port 5432 on the private subnet. This lets other servers in your cluster talk to Postgres, but nothing from the public internet to keep things secure. 

Firewall rules are handled by UFW on your servers which denies all incoming traffic by default.

Hetzner Cloud Integration

New
Hetzner provides cloud servers around the world. You can now use Hatchbox's integration to deploy servers with Hetzner Cloud!

For Hetzner's dedicated servers, you can create them and connect to Hatchbox using the Custom VPS option.

Ruby 3.2.2, 3.1.4, 3.0.6, and 2.7.8 support

New
New versions of Ruby were just released with a couple of security fixes. These are now available on Hatchbox and you can start using them today.

See the Ruby release page to learn more: https://www.ruby-lang.org/en/news/2023/03/30/ruby-3-2-2-released/

👨‍⚕️🩺 Introducing Application Health Checks!

New
For load balanced applications, you can now add a Health Check path to enable active health checks. 🎉

When enabled, Caddy will make an HTTP request every 30 seconds to determine if your application is healthy or not. If your application does not respond with a 200 OK, Caddy will remove the server from the load balancer until the next check that succeeds.

Plus, Rails 7.1 will ship with an /up route specifically for health checks like these out of the box!

GitHub Apps Integration

New
You now use our GitHub App for Hatchbox.io deployments! 🎉

This allows you to fine-tune access to your repositories that Hatchbox has access to and it can be configured separately for each organization.

To get started, click the "Connect GitHub" button on your App or Connected Accounts page. Install the Hatchbox GitHub App on your organization and update your app to use the GitHub app for deployments on the Repositories tab.

Existing applications will continue using GitHub OAuth for deployments, but we highly recommend switching to the GitHub Apps integration.

Caddy v2.6.3

Update
We've built the latest version of Caddy which includes a handful of bugfix improvements.

See the release for more details: https://github.com/caddyserver/caddy/releases/tag/v2.6.3

To update your server(s) to the latest Caddy, click the Configure button on your server.

Ruby 3.2.1 support

New
A new version of Ruby has shipped. Just bugfixes, no security vulnerabilities. See the release on Ruby's website: https://www.ruby-lang.org/en/news/2023/02/08/ruby-3-2-1-released/

Whenever cron job support

New
For Ruby apps, we now support managing cron jobs automatically during deploy using the whenever gem.

Ruby deployments are now slightly faster

Improvement
Hatchbox now runs "bundle check" before installing gems and if all the gems are installed, it will skip the "bundle install" command. Yay for speed improvements!

Postgres backups now use the custom format

Improvement
We've updated our Postgres backup script to now use the "custom" format. This format is compressed and makes it easier to restore backups using pg_restore, TablePlus, Postico, or your favorite Postgres GUI.

Ruby 3.2.0 Support

New
You can now deploy apps with Ruby 3.2

For more details about the release, see: https://www.ruby-lang.org/en/news/2022/12/25/ruby-3-2-0-released/

Ruby 3.1.3, 3.0.5, and 2.7.7 support

New
We've added support for the new Ruby versions: 3.1.3, 3.0.5, and 2.7.7

These new Ruby versions include a security fix for CGI. Read more.

BUNDLE_WITHOUT

Update
To provide more flexibility, we will no longer set the bundle "without" config. Bundler will install all gems during deploys by default now.

If you would like to speed up deployments as before, you can set the BUNDLE_WITHOUT environment variable to skip development and test groups.

BUNDLE_WITHOUT="development:test"

OpenSSL Updates

Update
Ubuntu has released a patch for OpenSSL for the recent CVEs. Rather than upgrading OpenSSL versions, they patch the current version to prevent bugs and regressions in LTS releases.

We've also recompiled all Ruby versions that use OpenSSL 1.1 against OpenSSL 1.1.1s so they also receive the patches. To update your apps, deploy a new version and the updated version of Ruby and OpenSSL will be installed.

Ruby 3.0.4 and Node.js 18.12.1 are now defaults

Update
The default versions for Ruby and Node.js have been updated to the following:
  • Ruby 3.0.4
  • Node.js 18.12.1
If your application doesn't specify a version, we'll use these defaults.

See the Help section to learn how to run specific versions of these languages for your applications.

PostgreSQL 15 is now the default

Update
Today, we updated Hatchbox to start installing PostgreSQL 15 and we're also recording the currently running version so you can see it in the Web UI.

For existing users on older versions of PostgreSQL, you can follow this guide to upgrade your databases to the latest version: Upgrading PostgreSQL Version on Ubuntu Server

Caddy v2.6.2

Update
We've updated Caddy server to version 2.6.2. This adds support for HTTP/3 protocol. Read more about HTTP/3 here

Since HTTP/3 utilizes QUIC transport, you'll need to allow UDP traffic in your network/firewall to use it.

To update to this version, click "Configure" on your servers to update them to the latest.

Apps without web servers

Improvement
We've updated Hatchbox to support clusters with more unique configurations. Clusters can now deploy apps that don't have a Web Server.

For example, if you've got an app that solely runs background jobs, you can now deploy it with Hatchbox. 👍