sql >> Database >  >> RDS >> PostgreSQL

Probleem met postgresql en pgadmin docker-containers

Ik heb je scenario op deze manier gereproduceerd:

# docker run -p 5431:5432 --name postgres2 -e POSTGRES_PASSWORD=ad1234 -d postgres
# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
d4030c577a24        postgres            "docker-entrypoint.s…"   2 minutes ago      Up 2 minutes       0.0.0.0:5431->5432/tcp   postgres2

# sudo -u postgres psql -h localhost -p 5431
could not change directory to "/root": Permission denied
Password: 
psql (10.5, server 11.2 (Debian 11.2-1.pgdg90+1))
WARNING: psql major version 10, server major version 11.
         Some psql features might not work.
Type "help" for help.

postgres=# CREATE DATABASE mytestdb;
CREATE DATABASE
postgres=# \q

Start nu docker voor pgadmin en kan verbinding maken met postgresql:

docker run -p 80:80 --link postgres2 -e "[email protected]" -e "PGADMIN_DEFAULT_PASSWORD=SuperSecret" -d dpage/pgadmin4

Met de bovenstaande opdracht kunt u de postgres2-docker koppelen aan de pgadmin-docker en vervolgens bij het maken van een verbinding op pgadmin4 het volgende gebruiken:

  • hostnaam/adres:postgres2
  • poort:5432
  • Onderhoudsdatabase:postgres
  • gebruikersnaam:postgres

daarmee heb ik verbinding gemaakt met Postgres van pgadmin4

Voor zover ik weet, wordt docker PostgreSQL standaard geleverd met een verbinding met alleen localhost en als u een externe verbinding wilt toevoegen, moet u "listen_addresses ='*'" toevoegen aan postgresql.conf




  1. Hoe implementeer je gapless, gebruiksvriendelijke ID's in NHibernate?

  2. één op één duidelijke beperking op selectie

  3. MySQL gebruiken in Flask

  4. Analytische gegevens van Spark in Postgres invoegen