Use "uv" for building virtual environments

Change-Id: I5e24e82e6347d351cac71255904b44aa558d449b
(cherry picked from commit 4e2d8ac7928cb95aadbd0587230837281827976a)
diff --git a/images/barbican/Dockerfile b/images/barbican/Dockerfile
index 09543bd..7bb2b02 100644
--- a/images/barbican/Dockerfile
+++ b/images/barbican/Dockerfile
@@ -6,8 +6,8 @@
 ARG BARBICAN_GIT_REF=b5841df387e5ab38caf173950a1d98ab37a51453
 ADD --keep-git-dir=true https://opendev.org/openstack/barbican.git#${BARBICAN_GIT_REF} /src/barbican
 RUN git -C /src/barbican fetch --unshallow
-RUN --mount=type=cache,mode=0755,target=/root/.cache/pip,sharing=private <<EOF bash -xe
-pip3 install \
+RUN --mount=type=cache,target=/root/.cache/uv <<EOF bash -xe
+uv pip install \
     --constraint /upper-constraints.txt \
         /src/barbican \
         pykmip