172 похожих чатов

Это как понимать?) постгря запускается, потом отрубается, потом пишет типа

оно успешно стартануло, но моя аппа бьёт ошибки из-за того, что база не запущена
https://gist.github.com/nacknime-official/45497fb0797e3f997fbad03ee51bf1e6

15 ответов

20 просмотров
nacknime- Автор вопроса

https://gist.github.com/nacknime-official/45497fb0797e3f997fbad03ee51bf1e6

Докер не гарантирует порядок запуска контейнеров. Нужно на уровне приложения или его entrypoint проверять, что база запустилась и готова обрабатывать запросы, а уже потом пытаться выполнять миграции и запросы. Например, я использую вот такой скрипт https://github.com/dolfinus/arkenston-backend/blob/master/wait_for_postgres.sh

nacknime- Автор вопроса
Максим Мартынов
Докер не гарантирует порядок запуска контейнеров. ...

о, прикольно, видел этот pg_ready где-то, спасибо) но у меня бот в итоге запускается, всё окей, эти ошибки просто засирают логи)

nacknime
о, прикольно, видел этот pg_ready где-то, спасибо)...

Приложение пытается повторно применить миграцию в случае ошибки, вот и дожидается, пока база не начнет отвечать

nacknime
screenshot интересно, как так то

не смущает /var/run/postgresql:5432?

nacknime- Автор вопроса
Aleksandr F.
не смущает /var/run/postgresql:5432?

да, смущает) всё-таки нужно задавать PGHOST и другие вары перез запуском pg_isready?

nacknime
да, смущает) всё-таки нужно задавать PGHOST и друг...

Блин, ну очевидно же, что да. В том скрипте, что я скидывал, явно задаются переменные окружения с хостом, портом и credentials для подключения к базе

nacknime
та думал что можно без них)

Чтобы он с базой общался посредством телепатии?

nacknime- Автор вопроса
Максим Мартынов
Чтобы он с базой общался посредством телепатии?

думал сам определит) но новый вопрос возник: у меня нету ни pg_isready, ни psql, ибо это образ python:3.8-slim, а пихать целую постгрю в образ, который не подразумевает наличие постгри (ибо compose создает отдельный контейнер с постгрей), не буду как быть?(

nacknime
думал сам определит) но новый вопрос возник: у ме...

pg_isready и psql находятся не в пакете postgres-server, а в postgres-client, который весит от силы пару мегабайт

nacknime- Автор вопроса
Максим Мартынов
pg_isready и psql находятся не в пакете postgres-s...

не, я уже пробовал, он мне много чего скачивал

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Ребят в СИ можно реализовать ООП?
Николай
33
у вас два процесса. один посылает другому сигнал. у вас есть код обоих процессов? если всё не так - расскажите как оно на самом деле. а именно кто кому чего, есть-ли консоли,...
Karagy
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Карта сайта