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

Народ, привет. Запускаю два сервиса в docker-compose - один питонячий

с FastAPI, второй с postgres. Первый запускается сервис с pg, всё ок, запускается на 0.0.0.0:5432, порты проброшены, судя по docker-compose ps. Вторым запускается питоний сервис, стучится на localhost:5432 и... не находит сервис с pg. Оба хоста указаны в .env, две разные записи (host и db_host) и обе равны 0.0.0.0. Так вот, вопрос: как сервису питона увидеть сервис с поднятой базой? Win 10 x64, Python - 3.9-slim-buster, pg - postgres-latest.

8 ответов

19 просмотров

А зачем он на локалхост стучится, надо на постгрес

Alexey-Konev Автор вопроса
Denis Kalinochkin
А зачем он на локалхост стучится, надо на постгрес

Пофиксил, редиректнул оба сервиса на 0.0.0.0 - то же самое. Вот логи: db: 2021-01-14 08:14:35.121 UTC [1] LOG: starting PostgreSQL 13.1 (Debian 13.1-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit 2021-01-14 08:14:35.122 UTC [1] LOG: listening on IPv4 address "0.0.0.0", port 5432 2021-01-14 08:14:35.122 UTC [1] LOG: listening on IPv6 address "::", port 5432 2021-01-14 08:14:35.131 UTC [1] LOG: listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432" 2021-01-14 08:14:35.141 UTC [27] LOG: database system was shut down at 2021-01-14 08:14:34 UTC 2021-01-14 08:14:35.149 UTC [1] LOG: database system is ready to accept connections python: pony.orm.dbapiprovider.OperationalError: could not connect to server: Connection refused Is the server running on host "0.0.0.0" and accepting TCP/IP connections on port 5432?

Alexey Konev
Пофиксил, редиректнул оба сервиса на 0.0.0.0 - то ...

Ну ты либо ставь network=host, либо почитай, как сети в докере работают https://stackoverflow.com/questions/37683508/how-does-service-discovery-work-with-modern-docker-docker-compose

Alexey-Konev Автор вопроса
Denis Kalinochkin
Ну ты либо ставь network=host, либо почитай, как с...

Спасибо за наводку, пойду курить мануалы. Думал, что между всеми сервисами бридж по умолчанию проброшен...

В докер компоузе имя сервиса резолвится в айпишник, по локалхосту не достучиштся

Alexey-Konev Автор вопроса
Проксимов Прксимович
В докер компоузе имя сервиса резолвится в айпишник...

Так-то оно так, но сервис грохается до того, как пытается достучаться по имени сервиса. Поменял - всё то же самое.

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

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

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
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
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
~ 2m21s  nix shell github:nixos/nixpkgs#stack ~  stack ghc -- --version error: … while calling the 'derivationStrict' builtin at /builtin/derivation.nix:...
Rebuild your mind.
6
Карта сайта