Use "uv" for building virtual environments

Change-Id: I5e24e82e6347d351cac71255904b44aa558d449b
(cherry picked from commit 4e2d8ac7928cb95aadbd0587230837281827976a)
diff --git a/images/placement/Dockerfile b/images/placement/Dockerfile
index 7dd8101..2c62dc7 100644
--- a/images/placement/Dockerfile
+++ b/images/placement/Dockerfile
@@ -6,8 +6,8 @@
 ARG PLACEMENT_GIT_REF=828b2559a1b3c0b59c543e851c6ea3efb1baae20
 ADD --keep-git-dir=true https://opendev.org/openstack/placement.git#${PLACEMENT_GIT_REF} /src/placement
 RUN git -C /src/placement 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/placement
 EOF