หลายๆ ครั้งเราต้องการรัน docker image โดยให้ซอฟต์แวร์อ่าน/เขียนข้อมูลภายใต้สิทธิ์ของ user เราเอง ไม่ใช่ root ซึ่งจะทำให้หลังจากรันโปรแกรมเสร็จแล้ว เราก็ไม่ต้องใช้สิทธิ์ root ในการจัดการไฟล์เหล่านั้น โดยเฉพาะกรณีผู้ใช้ CentOS/RHEL 8 แล้วใช้ podman จะมีผลมากกว่า เพราะ podman ไม่ต้องการ daemon ในสิทธิ์ root อยู่แล้ว
สำรวจดูพบว่าอิมเมจแต่ละอันมีวิธีการรันบน non-root ไม่เหมือนกัน เช่น postgres นั้นใช้อาร์กิวเมนต์ user
ของ docker ไปตรงๆ เลย หากเขียนเป็น docker-compose.yml จะได้ประมาณนี้ (ในกรณี uid ของผู้ใช้ปัจจุบันเป็น 1001 และ gid เป็น 1005)
version: '3.5'
services:
postgres: