W zależności od przypadku użycia, co możesz zrobić, zamiast przekazywać użytkownika do psql
polecenie ma na celu zdefiniowanie zmiennej środowiskowej PGUSER
do kontenera podczas uruchamiania.
W ten sposób będzie to domyślny użytkownik PostgreSQL, jeśli nie określisz żadnego, więc nie będziesz musiał nawet go określać, aby się połączyć:
$ docker run --name postgres -e POSTGRES_PASSWORD=bar -e POSTGRES_USER=foo -e PGUSER=foo -d postgres
e250f0821613a5e2021e94772a732f299874fc7a16b340ada4233afe73744423
$ docker exec -ti postgres psql -d postgres
psql (12.4 (Debian 12.4-1.pgdg100+1))
Type "help" for help.
postgres=#