We're excited to let you know that we've just released Portainer CE 2.1.1. This is a major release, that delivers 31 new features and fixes, including the much anticipated support for Compose >3 in standalone hosts, and Compose 3.8 for Swarm. We've highlighted the most significant changes below, and you'll find a link to our tips and tricks for upgrading.
1. Support for Compose v3.8 when deploying against standalone Docker Hosts
This feature has been in demand for over a year, so we're excited for you to get your hands on it. We now ship the compose binary as part of the Portainer container. This means you can now use plain Compose files up to 3.8 (or higher for standalone) to deploy stuff through the UI/API.
Note this feature is only available for AMD64 architectures (Windows & Linux). The team are still working on creating a standalone binary for Compose that works on ARM/ARM64 (we aim to add support for these architectures in a future release).
2. Support for Compose v3.8 when deploying against Swarm Hosts
Another feature that has been in hot demand! This one was a challenge, but you can now deploy any Compose v3.8 stack against Swarm.
3. Portainer Images now built with Docker Buildx
We needed to report our images to Buildx to get native support for all architectures, and importantly, to provide Windows images spanning 1809-2004. This was also needed in order to get Portainer working on Docker 20.04.x on platforms other than AMD64.
4. De-emphasis the Portainer Login box when OAuth is used
When you have OAuth authentication enabled, the Portainer login screen becomes somewhat pointless, as you don’t need to enter creds, instead you need to click a “login with OAuth” button; so we have now hidden the login screen and just show the “login with OAuth” button.
5. Advanced Deployment for Kubernetes
We already allowed admins to deploy Kubernetes apps using a manifest directly within Portainer, we have now expanded this to allow the creation of any Kubernetes resource.
1. Fixes for usernames that include the @ sign when deploying resources in Kubernetes
Anyone using OAuth or LDAP authentication in Portainer that had the @ sign in their name would have been prevented from deploying resources in Kubernetes endpoints. This is because we pass the username to Kubernetes, which does not support the @ sign. We have now changed this behavior.
2. Fixed a bug that causes an “invalid duration” error to be logged in the Portainer container, that then stops Portainer from starting.
Tips and tricks for Upgrading
We have tested and validated Portainer version upgrades from 1.24.0 to the latest (2.1.1). Although un-tested, it is possible an upgrade path that has not been validated might work. We recommended that you test any upgrade path on a non critical system before applying it to your active production systems.
See upgrade Instructions for Docker, Docker Swarm and Kubernetes here.
You can pull the latest CE image by command:
docker pull portainer/portainer-ce:latest
Any questions, don't hesitate to drop me a line. Or join our Slack channel here.