简体   繁体   中英

Docker Postgres Connection issue

I am facing below issue in docker with postgres while trying to open localhost:3000

could not connect to server: Connection refused Is the server running on host 
"localhost" (127.0.0.1) and accepting TCP/IP connections on port 5432? could 
 not connect to server: Cannot assign requested address Is the server running 
 on host "localhost" (::1) and accepting TCP/IP connections on port 5432?

Below the docker-compose file i am using

 version: '3'
 volumes:  
 postgres_data: {} 

 services:
 redis:
 image: redis
 command: redis-server
 ports:
  - "6379:6379"
app:    
build:      
  context: .      
  dockerfile: /Users/admin/git/generic/myapp/docker/app/Dockerfile 
depends_on:      
  - db  
ports:      
  - 3000:3000
db:    
image: postgres 
volumes:      
  - postgres_data:/var/lib/postgresql/data
web:    
build:      
  context: .      
  dockerfile: /Users/admin/git/generic/myapp/docker/web/Dockerfile  
depends_on:      
  - app    
ports:      
  - 80:80

Can anyone help regarding this?

Probably, you must to define 5432 port in your docker-compose.

    ports:      
     - 80:80
     - 5432:5432

Use this configuration for docker-compose.yml:

version: '3.5'

  services:

    redis:
       image: redis
       command: redis-server
       ports:
         - "6379:6379"

    app:    
       build:      
         context: .      
         dockerfile: /Users/admin/git/generic/myapp/docker/app/Dockerfile 
       depends_on:      
         - db  
       ports:      
         - "3000:3000"  
       networks:
         services-network:
           aliases:
             - app

    web:    
      build:      
        context: .      
        dockerfile: /Users/admin/git/generic/myapp/docker/web/Dockerfile  
      depends_on:      
        - app    
      ports:      
        - "80:80"
      networks:
        services-network:
          aliases:
           - web
    db:
      image: postgres 
      volumes:      
       - postgres_data:/var/lib/postgresql/data
      environment:
       - POSTGRES_USER=postgres
       - POSTGRES_PASSWORD=postgres
       - POSTGRES_DB=db_name
      expose:
       - "5432"
      networks:
        services-network:
          aliases:
            - db

volumes:  
 postgres_data:

networks:
  services-network:
    name: services-network
    driver: bridge

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM