Сервер работает локально и принимает соединения через сокет "/var/run/postgresql/.s.PGSQL.5432"? - PullRequest
0 голосов
/ 28 мая 2020

Я запускаю docker на Windows 10, когда я пытаюсь запустить docker с: docker-compose up --build Все службы были включены, но я получил ошибку django.db.utils.OperationalError: 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"? Это мой docker -compose. yml:

version: "3.4"

services:
  medicinesite:
    # container_name: medicine_app
    image: medicinesite
    build:
      context: .
      network: host
    stdin_open: true
    tty: true
    command: python manage.py runserver
    volumes:
      - .:/app
      # - /app/postgres_data
    ports:
      - 8000:8000
    depends_on:
      - postgres
  postgres:
    # container_name: medicine_db
    image: postgres:11
    volumes:
      - ./postgres_data:/var/lib/postgresql
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
      POSTGRES_DB: postgres
    ports:
      - 5432:5432

Это мой Dockerfile:

FROM python:3.8

RUN mkdir /app
RUN mkdir /var/run/postgresql
RUN mkdir /var/lib/postgresql
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt

CMD ["gunicorn", "--bind", "0.0.0.0:8000", "medicinesite.wsgi"]
RUN ln -s /tmp/.s.PGSQL.5432 /var/run/postgresql/.s.PGSQL.5432

Что я пробовал: - Создать каталог в /var/run/postgresql - Создать каталог в /var/lib/postgresql - Установить psycopg2 в requirements.txt в: psycopg2==2.8.4 --no-binary psycopg2 - Добавить ln -s /tmp/.s.PGSQL.5432 /var/run/postgresql/.s.PGSQL.5432 в Dockerfile Результат тот же, пожалуйста, любая помощь будет признательна.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...