We’ve had a busy year at ComputeStacks, with the release of 4 major features, plus hundreds of small bug fixes and tweaks. Here is an overview of the major new features & changes to the ComputeStacks platform.
In version 8, released earlier this year, we introduced the concept of Image Variants. Previously when adding an image to ComputeStacks, you would have to create a separate image for each image tag (i.e. php 7.4, php 8.0). With this new feature, you can now create a single parent image, and then define multiple variants (tags) of that image.
This brings us two nice features for users: the order screen is cleaner, with just a drop down to choose which version to install, and more importantly, you can now switch running containers between versions. This is a much nicer way of upgrading, or downgrading, to a particular version. Almost 1-click php upgrades, or mariadb upgrades!
Building upon our new image variants feature, we’ve also introduced Image Collections. This allows you to group multiple images together, and expose that as a single item on the order page.
Named Container Links
A common practice when deploying multiple docker containers with docker compose, is to connect them using a name such as “mysql” or “postgres”. This was done either through the use of custom docker networks, or by manually specifying the “link” option in your compose file. To make it easier to migrate a compose file to ComputeStacks, we added a feature called “Custom Host Entries”.
This lets you define custom network names for attached containers.
ComputeStacks now has an officially supported method of extending core functionality. In addition to supporting changes & features within the UI, you can now build features and integrations without touching the core platform.
Major Networking Changes
We made some significant changes to how containers are networked, and how we manage availability zones. Beginning in version 9, we deprecated our existing clustered networking environment that relied on calico & etcd, and replaced it with local linux bridges. Now, each availability zone consists of just a single node, and therefore all containers within a project are now pinned to a single node.
This change was based on how most of our users used the platform, and it allowed us to dramatically simplify the platform for better stability, maintainability, and performance. It’s also a reflection of the fact that all ComputeStack installations (that we were aware of) were virtualized, and that the underlying platform would handle high-availability.
Looking forward to 2024
In January of 2023, the team behind ComputeStacks started building a WordPress hosting platform built on top of ComputeStacks, called CloudPress.com. As ComputeStacks is the foundation of that service, we’ll continue to support and build new features into ComputeStacks.