PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Docker изчакайте да стартира postgresql

Прекарах няколко часа в проучване на този проблем и получих решение. Docker depends_on просто помислете за стартиране на услугата, за да стартирате друга услуга. Тогава това се случва, защото веднага щом db се стартира, приложението за услуга се опитва да се свърже с вашия db , но не е готов за получаване на връзки. Така че можете да проверите db здравно състояние в услугата за приложения, за да изчакате връзка. Ето моето решение, то реши проблема ми. :)Важно:Използвам docker-compose версия 2.1.

version: '2.1'

services:
  my-app:
    build: .
    command: su -c "python manage.py runserver 0.0.0.0:8000"
    ports:
       - "8000:8000"
    depends_on:
      db:
        condition: service_healthy
    links:
      - db
    volumes:
      - .:/app_directory

  db:
    image: postgres:10.5
    ports:
      - "5432:5432"
    volumes:
      - database:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U postgres"]
      interval: 5s
      timeout: 5s
      retries: 5

volumes:
  database:

В този случай не е необходимо да създавате .sh файл. Надявам се да ви помогне, момчета;)cya



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Heroku Postgresql с Google Datastudio

  2. Какъв е форматът на низа/URL за връзка на PostgreSQL?

  3. Postgres връзката е затворена грешка в Spring Boot

  4. Какво се случва с дубликатите при вмъкване на няколко реда?

  5. Lumen - Създаване на връзка с базата данни по време на изпълнение