So what is your issue, you should write a docker-compose file so you will have a signe instance of posgresql but some container will share volume. Do you have some issues?
version: '3.1'
services:
web1:
image: odoo:16.0
depends_on:
- db
ports:
- "8070:8069"
volumes:
- odoo-web-data/web1:/var/lib/odoo
- ./config/web1:/etc/odoo
- ./addons/web1:/mnt/extra-addons
environment:
- PASSWORD_FILE=/run/secrets/postgresql_password
secrets:
- postgresql_password
web2:
image: odoo:16.0
depends_on:
- db
ports:
- "8069:8069"
volumes:
- odoo-web-data/web2:/var/lib/odoo
- ./config/web2:/etc/odoo
- ./addons/web2:/mnt/extra-addons
environment:
- PASSWORD_FILE=/run/secrets/postgresql_password
secrets:
- postgresql_password
db:
image: postgres:15
environment:
- POSTGRES_DB=postgres
- POSTGRES_PASSWORD_FILE=/run/secrets/postgresql_password
- POSTGRES_USER=odoo
- PGDATA=/var/lib/postgresql/data/pgdata
volumes:
- odoo-db-data:/var/lib/postgresql/data/pgdata
secrets:
- postgresql_password
volumes:
odoo-web-data:
odoo-db-data:
secrets:
postgresql_password:
file: odoo_pg_pass