Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

235
Visualizações
¿Cómo compartir la base de datos local de Postgres con Docker?

Tengo un proyecto django con base de datos PostgreS. Necesito usar mi base de datos local en el contenedor docker. ¿Cómo compartir el host local de la máquina con el contenedor docker? Mi docker-compose.yml :

 version: '3' services: web: build: ./ network_mode: "host" command: bash -c "python manage.py makemigrations && python manage.py migrate && python manage.py collectstatic --noinput --i rest_framework && gunicorn orion-amr.wsgi:application --bind 0.0.0.0:8000 --workers=2" ports: - "${webport}:8000" - "${pgport}:${pgport}" env_file: - ./.env

Configuración de Django.py:

 DATABASES = { 'default': { 'ENGINE': 'django.contrib.gis.db.backends.postgis', 'NAME': os.environ.get('pgdatabase'), 'USER': os.environ.get('pguser'), 'PASSWORD': os.environ.get('pgpassword'), 'HOST': os.environ.get('pghostname'), 'PORT': os.environ.get('pgport'), } }

yo añadí

 listen_addresses = '*'

al archivo postgresql.conf y debajo está mi archivo pg_hba.conf :

 # TYPE DATABASE USER ADDRESS METHOD # IPv4 local connections: host all all 0.0.0.0/0 trust # IPv6 local connections: host all all ::/0 trust # Allow replication connections from localhost, by a user with the # replication privilege. host replication all 127.0.0.1/32 trust host replication all ::1/128 trust

Ahora tengo un error:

 web_1 | django.db.utils.OperationalError: could not connect to server: Connection refused web_1 | Is the server running on host "127.0.0.1" and accepting web_1 | TCP/IP connections on port 5432? web_1 |

¿Quién puede ayudarme? ¡Por favor!

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

parece que os.environ.get('pghostname') apunta a 127.0.0.1 donde 127.0.0.1 significa este contenedor, no Host DB. como el error

 Is the server running on host "127.0.0.1" and accepting

Para conectarse con la base de datos del host, tiene un DNS especial para mac y window host.docker.internal . El host de base de datos debe ser

 'HOST': "host.docker.internal"

Para conectarse con HOST DB, o si está en Linux, entonces debería ser

 'HOST': "HOST_IP"

Puede obtener la IP del host desde ifconfig .

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda