Updating on Kubernetes
Always match the agent version to the Portainer Server version. In other words, when you're installing or updating to Portainer 2.25.0 make sure all of the agents are also on version 2.25.0.
Starting from Portainer CE 2.9 and BE 2.10, HTTPS is enabled by default on port 9443.
These instructions will configure Portainer to use both 9443
for HTTPS and 9000
for HTTP. You can choose to completely disable HTTP after the update.
Before you make Portainer HTTPS only, make sure you have all your Agents and Edge Agents already communicating with Portainer using HTTPS.
Before beginning any update, we highly recommend taking a backup of your current Portainer configuration.
Select the Portainer update method which matches the original installation method used.
Method 1: Updating using Helm
Add the Portainer Helm repository by running the following commands. Ignore any warnings about the repo already being there:
Next, run one of the following commands to update Portainer:
Method 2: Updating using YAML Manifest
Option 1: Via the Portainer UI
The easiest way to update is to use the Portainer UI along with our manifest files. Copy the contents of the manifest file that matches the method you used to deploy Portainer:
Copy the contents of the relevant NodePort manifest file:
Business Edition:
Community Edition:
For an agent-only deployment, use one of the following manifests instead:
Business Edition:
Community Edition:
If you have set a custom AGENT_SECRET
on your Portainer Server instance (by specifying an AGENT_SECRET
environment variable when starting the Portainer Server container) you must remember to explicitly provide the same secret to your Agent in the same way (as an environment variable) in the YAML when updating your Agent:
environment:
- AGENT_SECRET: yoursecret
Log into Portainer and connect to the Kubernetes environment where Portainer is installed. From the menu select Applications then select Create from manifest. Toggle Use namespace(s) specified from manifest to on, then enter portainer
in the Name field.
If you used a different name for your Portainer deployment, use that instead.
From the Build method selection choose Web Editor and ensure Kubernetes is selected as the Deploy type. Paste the contents of the YAML file then click Deploy. Portainer will process the manifest and should return you to the login page once the update is complete.
Option 2: Via the command line
If you prefer to use the command line to update, you can do so using kubectl
commands:
Log into the control node of your Kubernetes cluster and run one of the following commands:
Business Edition:
Community Edition:
For an agent-only deployment, use one of the following commands instead:
Business Edition:
Community Edition:
If you have set a custom AGENT_SECRET
on your Portainer Server instance (by specifying an AGENT_SECRET
environment variable when starting the Portainer Server container) you must remember to explicitly provide the same secret to your Agent in the same way (as an environment variable) in the YAML when updating your Agent:
environment:
- AGENT_SECRET: yoursecret
When the deployment is finished you will be able to log into Portainer. You should notice the new version number at the bottom-left of the Portainer UI.
Method 3: Force an update
If Portainer does not update after running the above commands, you can force a download of the latest image by running the following command:
Or, for an agent-only deployment, use this command instead:
Last updated