We are pleased to announce the general release of our brand new Python image for Cloud Containers.
Python-based containers are incredibly versatile and can be used in a variety of ways. You might be looking to host a Flask or Fast-API-based web application behind Gunicorn, for example. Or perhaps you need an isolated environment for a nifty data science or machine learning project that’s using many dependencies.
Why we’ve paired Python with Conda
Our Python images use Miniconda under the hood. Conda's authors call it “an open-source package and environment management system”, but we think of it as a supercharged implementation of pip: it allows you to create virtual environments for many different versions of Python and Python-specific packages, while taking care of their system-level requirements for you.
For you, this means you no longer need root access or a sysadmin to deal with dependency hell! And of course, just like with our other images, you can securely connect your Python application to other containers on your server. That’s the easy way to bring in different services such as Apache or NGINX, databases (eg: MySQL, PostgreSQL) or a NodeJS-based worker; just to name a few.
What’s more, Conda is a tool with a rich and active community behind, and many highly reputable software repositories exist for other tools that might not be strictly Python-specific. This means that you can also now install, for example, R and RStudio or Shiny in a Cloud Container, and expose it to the world as easily as a traditional website.
Get started with Python on Cloud Containers today
Intrigued? Head over to your Control Panel to get started, or have a look at our Python + Conda Container documentation for more information.
While we have your attention, we would also like to mention that the Python + Miniconda image gives you more access to Supervisor's configuration. This lets you make changes to the list of processes that run in your container and to apply them without needing to restart the container. It provides the flexibility to iterate quickly during development, and also gives you more control over how your container behaves.
If this is all new to you, Supervisor is a process control and monitoring system designed to be lightweight and convenient. By giving you power to alter on the fly how Supervisor is configured in your Cloud Containers, we hope it can be even more valuable. We would love your feedback on how you find it!