diff --git a/centos/Dockerfile b/centos/Dockerfile
index e61192267390a04c6a747c55f73f96477068c04b..7b19edb8e334954e2ab56fc358ce932bd2cb8693 100644
--- a/centos/Dockerfile
+++ b/centos/Dockerfile
@@ -561,3 +561,15 @@ RUN yum install -y \
         json-devel \
         && \
     yum clean all
+
+# Portable Python 3.8
+
+RUN mkdir -p /opt/python && \
+    cd /opt/python && \
+    curl -sSLO https://github.com/niess/python-appimage/releases/download/python3.8/python3.8.12-cp38-cp38-manylinux1_x86_64.AppImage && \
+    chmod +x python3.8.12-cp38-cp38-manylinux1_x86_64.AppImage && \
+    ./python3.8.12-cp38-cp38-manylinux1_x86_64.AppImage --appimage-extract && \
+    rm -f python3.8.12-cp38-cp38-manylinux1_x86_64.AppImage && \
+    mv squashfs-root 3.8
+
+RUN tar -C /opt/python/3.8/ --numeric-owner --xattrs --xattrs-include='*' -cf /opt/python/python-3.8.tar .