(1) Custom names in docker networks require compose file format to be at least 3.5
"Networks can also be given a custom name (since version 3.5)"
@see: https://docs.docker.com/compose/networking/#specify-custom-networks
(2) Add `traefik.enable=false` to the postgres
Thus, traefik never tries to handle the container.
(3) Bump traefik to 2.5.5
(4) Fix label of the portal
Use prefix `traefik.http.services.portal`
when directly voluming in the json and it does not exist, docker automatically creates a directory to mount which traefik chokes on trying to access it as a file. create a sensible mount dir but configure traefik to make a file in that directory (next commit)