|
| 1 | +--- |
| 2 | +description: This page provides technical documentation about Bitnami image deprecation happening August 2025 and how to adjust deployment if necessary. |
| 3 | +toc_max_heading_level: 2 |
| 4 | +--- |
| 5 | + |
| 6 | +import Tabs from '@theme/Tabs'; |
| 7 | +import TabItem from '@theme/TabItem'; |
| 8 | + |
| 9 | +# Bitnami image deprecation (August 2025) |
| 10 | + |
| 11 | +If you deploy Appsmith on Kubernetes using our Helm chart, a recent upstream change may affect your deployment. |
| 12 | + |
| 13 | +Bitnami [announced](https://github.com/bitnami/containers/issues/83267) that on August 28, 2025, many versioned images hosted at `docker.io/bitnami` will be moved to a read‑only `docker.io/bitnamilegacy` repository. Appsmith’s Helm chart includes Bitnami‑packaged images for the optional in‑cluster databases (MongoDB and PostgreSQL), so some deployments will be impacted when a MongoDB or PostgreSQL pod is replaced during a node replacement or other cluster maintenance. *This can cause an outage of your Appsmith deployment.* |
| 14 | + |
| 15 | +As of Appsmith Helm chart version 3.6.4, we are switching the defaults to use the `docker.io/bitnamilegacy` repositories. This is a stopgap solution while we evaluate options for a long-term solution for this change. |
| 16 | + |
| 17 | +## How do I know if I’m affected |
| 18 | + |
| 19 | +This change affects only Kubernetes deployments installed with Helm that still use the in‑cluster databases from the chart’s default values. You are not affected if you: |
| 20 | + |
| 21 | +- Use external/managed databases (for example, MongoDB Atlas or an external PostgreSQL) and have configured Appsmith to connect to them |
| 22 | +- Deployed Appsmith on a platform other than Kubernetes |
| 23 | +- Installed or reinstalled with a chart version that no longer relies on these Bitnami images (post‑August 2025 guidance) |
| 24 | + |
| 25 | +### Proactive check |
| 26 | + |
| 27 | +To proactively check your deployment, verify whether the MongoDB or PostgreSQL pods are using images from `docker.io/bitnami/*`. |
| 28 | + |
| 29 | +1. Locate the namespace your deployment is running in and set it in an environment variable for reuse: |
| 30 | + |
| 31 | +``` |
| 32 | +# Find the release and namespace |
| 33 | +helm list -A | grep appsmith |
| 34 | +
|
| 35 | +# Example: set the namespace (replace with your actual namespace) |
| 36 | +NAMESPACE=appsmith |
| 37 | +``` |
| 38 | + |
| 39 | +If multiple namespaces are returned, repeat the following checks for each one. |
| 40 | + |
| 41 | +2. Check if your deployment is using the default in‑cluster databases (MongoDB, PostgreSQL): |
| 42 | + |
| 43 | +``` |
| 44 | +kubectl get pods -n "$NAMESPACE" |
| 45 | +
|
| 46 | +# Example output |
| 47 | +NAME READY STATUS RESTARTS AGE |
| 48 | +appsmith-0 1/1 Running 3 (19d ago) 59d |
| 49 | +appsmith-mongodb-0 1/1 Running 0 22h |
| 50 | +appsmith-mongodb-1 1/1 Running 0 22h |
| 51 | +appsmith-mongodb-arbiter-0 1/1 Running 0 22h |
| 52 | +appsmith-postgresql-0 1/1 Running 0 22h |
| 53 | +``` |
| 54 | + |
| 55 | +If you do not see pods named with `mongodb` or `postgresql`, you are likely not using the in‑cluster databases and can skip the rest. |
| 56 | + |
| 57 | +If you do see these pods, check whether their images are pulled from `docker.io/bitnami`: |
| 58 | + |
| 59 | +``` |
| 60 | +# MongoDB |
| 61 | +kubectl get statefulset -n "$NAMESPACE" -l app.kubernetes.io/name=mongodb \ |
| 62 | + -o jsonpath='{range .items[*]}{.metadata.name}={.spec.template.spec.containers[0].image}{"\n"}{end}' | grep 'docker.io/bitnami/' || true |
| 63 | +
|
| 64 | +# PostgreSQL |
| 65 | +kubectl get statefulset -n "$NAMESPACE" -l app.kubernetes.io/name=postgresql \ |
| 66 | + -o jsonpath='{range .items[*]}{.metadata.name}={.spec.template.spec.containers[0].image}{"\n"}{end}' | grep 'docker.io/bitnami/' || true |
| 67 | +
|
| 68 | +``` |
| 69 | + |
| 70 | +If any command returns an image reference from `docker.io/bitnami/...`, you should take action to avoid future image pull errors after August 28, 2025 (for example, `ImagePullBackOff`). |
| 71 | + |
| 72 | +### Deployment is broken (after August 28, 2025) |
| 73 | + |
| 74 | +If your Appsmith deployment is currently down and shows MongoDB or PostgreSQL pods stuck with `ImagePullBackOff` or `ErrImagePull` (post‑August 28, 2025), you are likely already affected. |
| 75 | + |
| 76 | +Common symptoms: |
| 77 | + |
| 78 | +- `ImagePullBackOff` or `ErrImagePull` in `kubectl get pods` for MongoDB or PostgreSQL pods |
| 79 | +- `Failed to pull image`, `pull access denied`, or `insufficient_scope: authorization failed` in `kubectl describe pod` |
| 80 | + |
| 81 | +For example, your pod list might show: |
| 82 | + |
| 83 | +``` |
| 84 | +pod/appsmith-ee-mongodb-0 0/1 ImagePullBackOff 0 21m |
| 85 | +``` |
| 86 | + |
| 87 | +And `kubectl describe pod` might include: |
| 88 | + |
| 89 | +``` |
| 90 | +Warning Failed 2s (x2 over 16s) kubelet Failed to pull image "docker.io/bitnami/mongodb:6.0.13": failed to pull and unpack image "docker.io/bitnami/mongodb:6.0.13": failed to resolve reference "docker.io/bitnami/mongodb:6.0.13": pull access denied, repository does not exist or may require authorization: server message: insufficient_scope: authorization failed |
| 91 | +``` |
| 92 | + |
| 93 | +If you are seeing something similar to the above, proceed to the next section to fix it. |
| 94 | + |
| 95 | +## What to do next |
| 96 | + |
| 97 | +- If your deployment is still functional, take a backup of the instance |
| 98 | +- Upgrade to the latest Appsmith Helm chart version, at least 3.6.4. This release updates the in‑cluster MongoDB and PostgreSQL image repositories to `docker.io/bitnamilegacy` to ensure continued pulls after August 28, 2025. Follow the Kubernetes steps here: [Update Appsmith](/getting-started/setup/instance-management/update-appsmith?current-platform-type=kubernetes). |
| 99 | +- After upgrading, re‑run the proactive image checks above to confirm images reference `docker.io/bitnamilegacy/*`. |
| 100 | + |
| 101 | +If the deployment is still down and after performing the Helm upgrade, you may need to clear the current broken pod in the StatefulSet. Force a rollout of the MongoDB and PostgreSQL StatefulSets: |
| 102 | + |
| 103 | +``` |
| 104 | +kubectl rollout restart statefulset/appsmith-ee-mongodb -n "$NAMESPACE" |
| 105 | +kubectl rollout restart statefulset/appsmith-ee-mongodb-arbiter -n "$NAMESPACE" |
| 106 | +kubectl rollout restart statefulset/appsmith-ee-postgresql -n "$NAMESPACE" |
| 107 | +``` |
| 108 | + |
| 109 | +For further assistance, contact Appsmith support using the chat widget in the bottom‑right corner of this page. |
| 110 | + |
| 111 | +## See also |
| 112 | + |
| 113 | +- [Upgrade Appsmith versions](/getting-started/setup/instance-management/update-appsmith): Learn how to upgrade your Appsmith installation to the latest version. |
| 114 | +- [Schedule automatic updates for Appsmith installation](/getting-started/setup/instance-management/maintenance-window): Learn how to schedule updates to keep your installation up-to-date. |
| 115 | + - Bitnami announcement on catalog changes: [GitHub issue #83267](https://github.com/bitnami/containers/issues/83267) |
0 commit comments