That can never work. Sorry I missed that before. I updated the OP. If you need to rebuild data, then you need to
./launcher stop web_only; ./launcher rebuild data && ./launcher rebuild web_only
No. That’s exactly what is expected. You can’t rebuild postgres while another postgres is accessing the files. If a new data container is created you need to destroy and start a new web_only container because docker somehow links to the exact container rather than some reference to the one named data.