Как подключиться к postgres13 при запуске docker-compose из экземпляра ubuntu ec2
I am running a ubuntu 20.04 on AWS ec2 instance and I have the following Dockerfile
file configuration for my backend application:
FROM python:3.8
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
WORKDIR /backend
COPY requirements.txt /backend/
RUN pip install -r requirements.txt && \
pip install --upgrade pip
COPY . /backend/
COPY ./entrypoint.sh /
ENTRYPOINT ["sh", "/entrypoint.sh"]
docker-compose
version: "3.3"
services:
db:
image: postgres:latest
container_name: db
restart: always
env_file: .env
volumes:
- postgres_data:/var/lib/postgresql/data/
ports:
- 5432:5432
networks:
- backend_network
backend:
build: ./backend
container_name: backend
stdin_open: true
tty: true
restart: always
env_file: .env
volumes:
- ./backend:/backend
- ./backend/static:/backend/static
ports:
- 8000:8000
depends_on:
- db
links:
- db:db
networks:
- backend_network
volumes:
postgres_data:
networks:
backend_network:
driver: bridge
settings.py
DATABASES = {
"default": {
"ENGINE": "django.db.backends.postgresql_psycopg2",
"NAME": os.environ.get("POSTGRES_DB"),
"USER": os.environ.get("POSTGRES_USER"),
"PASSWORD": os.environ.get("POSTGRES_PASSWORD"),
"HOST": os.environ.get("POSTGRES_HOST"),
"PORT": 5432,
}
}
.env файл
# APP
POSTGRES_DB=somedbname
POSTGRES_USER=someuser
POSTGRES_PASSWORD=somepassword
# DATABASE
# PUBLIC_DB
DB_NAME=somedbname
DB_USER=someuser
DB_PASSWORD=somepassword
DB_HOST=xxxx.yyy.us-east-x.rds.amazonaws.com
и когда после раскрутки моего файла docker compose командой docker-compose up -d --build
Похоже, что мое приложение не может подключиться к rds
psql: error: could not connect to server: No such file or directory
Is the server running locally and accepting
connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"?
I am not sure to understand why docker-compose cannot connect to rds...?