контейнера.
Мой docker-compose.yml:
version: "3.9"
services:
db:
container_name: "db_container"
image: postgres:14-alpine
restart: unless-stopped
shm_size: 5g
env_file:
- ./postgres.env
volumes:
- postgres_data:/var/lib/postgresql/postgres_data
new_app:
container_name: "new_app"
build:
context: .
ports:
- '8080:8080'
volumes:
- .:/new_app
env_file:
- .env
depends_on: [db]
volumes:
postgres_data:
Каждый раз при попытке выполнения эндпойнта, где происходит запись в базу получаю следующую ошибку:
sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) 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: Address not available Is the server running on host "localhost" (::1) and accepting TCP/IP connections on port 5432?
Приложение пытается подключиться к бд по 127.0.0.1:5432? Нужно в настройках приложение посмотреть url до бд.
Нужен links или networks
Компоуз без links или networks из контейнера не оттопырит порт в другой контейнер. И из new_app надо обращаться не на локалхост, а на хост db. Он выйдет по имени контейнера вроде или сервиса. Точно не скажу
Обсуждают сегодня