diff --git a/.github/workflows/container-tests.yml b/.github/workflows/container-tests.yml
index aa584d98..16bd7965 100644
--- a/.github/workflows/container-tests.yml
+++ b/.github/workflows/container-tests.yml
@@ -57,7 +57,7 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        version: [ "10", "11", "12", "13", "14", "15", "16" ]
+        version: [ "11", "12", "13", "14", "15", "16" ]
         os_test: [ "fedora", "rhel8", "rhel9", "c9s" ]
         test_case: [ "container" ]
 
diff --git a/.github/workflows/openshift-pytests.yml b/.github/workflows/openshift-pytests.yml
index 9c22b5c6..f41d96ae 100644
--- a/.github/workflows/openshift-pytests.yml
+++ b/.github/workflows/openshift-pytests.yml
@@ -27,7 +27,7 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        version: [ "10", "12", "13", "14", "15", "16" ]
+        version: [ "12", "13", "14", "15", "16" ]
         os_test: [ "rhel8", "rhel9"]
         test_case: [ "openshift-pytest" ]
 
diff --git a/.github/workflows/openshift-tests.yml b/.github/workflows/openshift-tests.yml
index be81147b..3c2e1167 100644
--- a/.github/workflows/openshift-tests.yml
+++ b/.github/workflows/openshift-tests.yml
@@ -47,7 +47,7 @@ jobs:
     strategy:
       fail-fast: false
       matrix:
-        version: [ "10", "11", "12", "13", "15", "16" ]
+        version: [ "11", "12", "13", "15", "16" ]
         os_test: [ "rhel8", "rhel9"]
         test_case: [ "openshift-4" ]
     steps:
diff --git a/Makefile b/Makefile
index c1fc54ab..378c0a01 100644
--- a/Makefile
+++ b/Makefile
@@ -1,6 +1,6 @@
 # Variables are documented in common/build.sh.
 BASE_IMAGE_NAME = postgresql
-VERSIONS = 10 12 13 14 15 16
+VERSIONS = 12 13 14 15 16
 OPENSHIFT_NAMESPACES = 9.2
 NOT_RELEASED_VERSIONS =
 
diff --git a/README.md b/README.md
index 0b2ff603..51c2104f 100644
--- a/README.md
+++ b/README.md
@@ -23,7 +23,6 @@ For learning more information about concepts used in these container images, see
 
 PostgreSQL versions currently supported are:
 
-- [postgresql-10](https://github.com/sclorg/postgresql-container/tree/master/10)
 - [postgresql-12](https://github.com/sclorg/postgresql-container/tree/master/12)
 - [postgresql-13](https://github.com/sclorg/postgresql-container/tree/master/13)
 - [postgresql-14](https://github.com/sclorg/postgresql-container/tree/master/14)
@@ -99,7 +98,6 @@ To contribute, please follow these steps:
 
 For detailed information on the usage of specific PostgreSQL Dockerfiles, please refer to the corresponding usage documentation:
 
-- [PostgreSQL 10 Usage Documentation](https://github.com/sclorg/postgresql-container/tree/master/10)
 - [PostgreSQL 12 Usage Documentation](https://github.com/sclorg/postgresql-container/tree/master/12)
 - [PostgreSQL 13 Usage Documentation](https://github.com/sclorg/postgresql-container/tree/master/13)
 - [PostgreSQL 14 Usage Documentation](https://github.com/sclorg/postgresql-container/tree/master/14)
diff --git a/examples/postgresql-ephemeral-template.json b/examples/postgresql-ephemeral-template.json
index 31674d1e..d8e4d842 100644
--- a/examples/postgresql-ephemeral-template.json
+++ b/examples/postgresql-ephemeral-template.json
@@ -228,8 +228,8 @@
     {
       "name": "POSTGRESQL_VERSION",
       "displayName": "Version of PostgreSQL Image",
-      "description": "Version of PostgreSQL image to be used (10-el7, 10-el8, or latest).",
-      "value": "10-el8",
+      "description": "Version of PostgreSQL image to be used (13-el8, 15-el8, or latest).",
+      "value": "15-el8",
       "required": true
     }
   ]
diff --git a/examples/postgresql-persistent-template.json b/examples/postgresql-persistent-template.json
index fa131ed8..fe686d67 100644
--- a/examples/postgresql-persistent-template.json
+++ b/examples/postgresql-persistent-template.json
@@ -252,8 +252,8 @@
     {
       "name": "POSTGRESQL_VERSION",
       "displayName": "Version of PostgreSQL Image",
-      "description": "Version of PostgreSQL image to be used (10-el7, 10-el8, or latest).",
-      "value": "10-el8",
+      "description": "Version of PostgreSQL image to be used (13-el8, 15-el8, or latest).",
+      "value": "15-el8",
       "required": true
     }
   ]
diff --git a/imagestreams/imagestreams.yaml b/imagestreams/imagestreams.yaml
index e520914b..fe036bf3 100644
--- a/imagestreams/imagestreams.yaml
+++ b/imagestreams/imagestreams.yaml
@@ -19,7 +19,7 @@
     latest: "16-el9"
     distros:
       - name: RHEL 8
-        app_versions: [10, 12, 13, 15, 16]
+        app_versions: [12, 13, 15, 16]
 
       - name: RHEL 9
         app_versions: [13, 15, 16]
@@ -28,7 +28,7 @@
     latest: "16-el9"
     distros:
       - name: RHEL 8
-        app_versions: [10, 12, 13, 15, 16]
+        app_versions: [12, 13, 15, 16]
 
       - name: RHEL 9
         app_versions: [13, 15, 16]
diff --git a/imagestreams/postgresql-rhel-aarch64.json b/imagestreams/postgresql-rhel-aarch64.json
index ccae28c0..1dd1c669 100644
--- a/imagestreams/postgresql-rhel-aarch64.json
+++ b/imagestreams/postgresql-rhel-aarch64.json
@@ -9,24 +9,6 @@
   },
   "spec": {
     "tags": [
-      {
-        "name": "10-el8",
-        "annotations": {
-          "openshift.io/display-name": "PostgreSQL 10 (RHEL 8)",
-          "openshift.io/provider-display-name": "Red Hat, Inc.",
-          "description": "Provides a PostgreSQL 10 database on RHEL 8. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/blob/master/README.md.",
-          "iconClass": "icon-postgresql",
-          "tags": "database,postgresql",
-          "version": "10"
-        },
-        "from": {
-          "kind": "DockerImage",
-          "name": "registry.redhat.io/rhel8/postgresql-10:latest"
-        },
-        "referencePolicy": {
-          "type": "Local"
-        }
-      },
       {
         "name": "12-el8",
         "annotations": {
diff --git a/imagestreams/postgresql-rhel.json b/imagestreams/postgresql-rhel.json
index ccae28c0..1dd1c669 100644
--- a/imagestreams/postgresql-rhel.json
+++ b/imagestreams/postgresql-rhel.json
@@ -9,24 +9,6 @@
   },
   "spec": {
     "tags": [
-      {
-        "name": "10-el8",
-        "annotations": {
-          "openshift.io/display-name": "PostgreSQL 10 (RHEL 8)",
-          "openshift.io/provider-display-name": "Red Hat, Inc.",
-          "description": "Provides a PostgreSQL 10 database on RHEL 8. For more information about using this database image, including OpenShift considerations, see https://github.com/sclorg/postgresql-container/blob/master/README.md.",
-          "iconClass": "icon-postgresql",
-          "tags": "database,postgresql",
-          "version": "10"
-        },
-        "from": {
-          "kind": "DockerImage",
-          "name": "registry.redhat.io/rhel8/postgresql-10:latest"
-        },
-        "referencePolicy": {
-          "type": "Local"
-        }
-      },
       {
         "name": "12-el8",
         "annotations": {
diff --git a/specs/multispec.yml b/specs/multispec.yml
index af8e8c5a..d4bc0911 100644
--- a/specs/multispec.yml
+++ b/specs/multispec.yml
@@ -56,15 +56,6 @@ specs:
            { yum -y module enable postgresql:{{ spec.version }} || :; } && \
 
   version:
-    "10":
-      version: "10"
-      prev_version: "9.6"
-      short: "10"
-      prev_short: "96"
-      common_image_name: "{{ spec.org }}/postgresql-10-{{ spec.prod }}"
-      rhel_image_name: "rhel8/postgresql-{{ spec.short }}"
-      latest_fedora: "f34"
-
     "12":
       version: "12"
       prev_version: "10"
@@ -115,9 +106,6 @@ specs:
 
 matrix:
   include:
-    - version: "10"
-      distros:
-        - rhel-8-x86_64
     - version: "12"
       distros:
         - rhel-8-x86_64
diff --git a/test/run_test b/test/run_test
index e198b8f4..e0557a64 100755
--- a/test/run_test
+++ b/test/run_test
@@ -686,7 +686,7 @@ run_upgrade_test ()
 {
   local ret=0
 
-    local upgrade_path="none 9.2 9.4 9.5 9.6 10 12 13 none" prev= act=
+    local upgrade_path="none 12 13 15 16 none" prev= act=
     for act in $upgrade_path; do
         if test "$act" = $VERSION; then
             break
@@ -711,12 +711,7 @@ run_migration_test ()
     [ "${OS}" == "fedora" ] && return 0
 
     local from_version
-    # Only test a subset of the migration path on non-intel hosts
-    if [ "$(uname -m)" == "x86_64" ]; then
-        local upgrade_path="9.2 9.4 9.5 9.6 10 12 13 15"
-    else
-        local upgrade_path="10 12 13 15"
-    fi
+    local upgrade_path="12 13 15 16"
 
     for from_version in $upgrade_path; do
         # Do not test migration from $VERSION:remote to $VERSION:local
diff --git a/test/run_upgrade_test b/test/run_upgrade_test
index e91282bc..9e194981 100755
--- a/test/run_upgrade_test
+++ b/test/run_upgrade_test
@@ -74,6 +74,7 @@ assert_upgrade_succeeds ()
         info "Upgrading to $upgrade_to"
         UPGRADE_IMAGE=$(get_image_id "$upgrade_to")
         run_server "$DATADIR" "$UPGRADE_IMAGE" "-e POSTGRESQL_UPGRADE=$1"
+        docker logs "$CID"
         wait_for_postgres "$CID"
         eval "data_${dataspec}_check"
         debug "the upgrading container of version '$upgrade_to' responded"
@@ -81,6 +82,7 @@ assert_upgrade_succeeds ()
         docker rm -f "$CID" >/dev/null
 
         run_server "$DATADIR" "$UPGRADE_IMAGE"
+        docker logs "$CID"
         wait_for_postgres "$CID"
         eval "data_${dataspec}_check"
         debug "restarted server of version '$upgrade_to' responded"