access issue with postgresql 14 docker image on MacOS Sonoma - Mailing list pgsql-general

From Richard Welty
Subject access issue with postgresql 14 docker image on MacOS Sonoma
Date
Msg-id 18dc36236cd.d2e96e751765010.809842237628531499@salesium.com
Whole thread Raw
Responses Re: access issue with postgresql 14 docker image on MacOS Sonoma
List pgsql-general
we're using Postgresql 14 with our Laravel/Php appliction. it is working well
in EC2 and in a Docker image on my Ubuntu 22.04 desktop at work. however,
a while back it stopped working with Docker on my Macbook Air in response
to a major OS upgrade. wondering if anyone knows what i might need to change to fix
this.
the docker image is launching, i can open a terminal in docker-desktop and use psql
to connect to it and poke about with a stick. i can also access it via pgadmin using
localhost with port 5432 as expected.

but when i try to migrate the db schema using Laravel Sail, i get the following error:

  SQLSTATE[08006] [7] connection to server at "localhost" (127.0.0.1), port 5432 failed: Connection refused
Is the server running on that host and accepting TCP/IP connections?
connection to server at "localhost" (::1), port 5432 failed: Cannot assign requested address
Is the server running on that host and accepting TCP/IP connections? (SQL: select tablename, concat('"', schemaname, '"."', tablename, '"') as qualifiedname from pg_catalog.pg_tables where schemaname in ('public'))

this suggests that postgresql is not being configured properly for access from the container
containing the web app. i have included the configurations from docker-compose.yml below -
but this is the same docker-compose.yml that is currently working on Ubuntu and was working
until the MacOS upgrade, so i'm kind of baffled.

TIA, richard

--------------

Docker compose snippet

   salesium.test:
        build:
            context: ./vendor/laravel/sail/runtimes/8.1
            dockerfile: Dockerfile
            args:
                WWWGROUP: '${WWWGROUP}'
        image: sail-8.1/app
        extra_hosts:
            - 'host.docker.internal:host-gateway'
        ports:
            - '${APP_PORT:-80}:80'
            - '${HMR_PORT:-8080}:8080'
        environment:
            WWWUSER: '${WWWUSER}'
            LARAVEL_SAIL: 1
            XDEBUG_MODE: '${SAIL_XDEBUG_MODE:-off}'
            XDEBUG_CONFIG: '${SAIL_XDEBUG_CONFIG:-client_host=host.docker.internal}'
        volumes:
            - '.:/var/www/html'
        networks:
            - sail
        depends_on:
            - pgsql
    pgsql:
        image: 'postgres:14'
        ports:
            - '${FORWARD_DB_PORT:-5432}:5432'
        environment:
            PGPASSWORD: '${DB_PASSWORD:-secret}'
            POSTGRES_DB: '${DB_DATABASE}'
            POSTGRES_USER: '${DB_USERNAME}'
            POSTGRES_PASSWORD: '${DB_PASSWORD:-secret}'
        volumes:
            - 'sail-pgsql:/var/lib/postgresql/data'
            - './vendor/laravel/sail/database/pgsql/create-testing-database.sql:/docker-entrypoint-initdb.d/10-create-testing-database.sql'
        networks:
            - sail
        healthcheck:
            test: ["CMD", "pg_isready", "-q", "-d", "${DB_DATABASE}", "-U", "${DB_USERNAME}"]
            retries: 3
            timeout: 5s



pgsql-general by date:

Previous
From: Adrian Klaver
Date:
Subject: Re: DETAIL: Could not open file "pg_xact/0EEA": No such file or directory
Next
From: Tim Palmer
Date:
Subject: Identifying optimizer usage of indexed expressions