Why does lsblk report partition as "null" from within a docker container?

The following lsblk command returns “null” for several fields when called from within my archlinux container. On my natively running system the lsblk command returns values for all fields as expected.

lsblk --json -b -o+partn,partuuid,parttype,uuid /dev/sdd

Here’s my docker run command.

docker run \
    --env PS1="archlinux(\#)[\d \T:\w]\\$ " \
    --interactive \
    --privileged \
    --device=/dev/sdd \
    --cap-add=SYS_ADMIN \
    --rm \
    --tty \
    "archlinux:latest"

How can I get lsblk to report the correct values for my drive?

What are those fields? I don’t know where lsblk gets the data from, but partuuid and uuid would be available as a file under “/dev/disk”, so you could try to mount that