Artem
Подскажите плиз, где моя ошибка?: Пытаюсь запустить flask-приложение в контейнере docker с подключением к бд Postgres на локалоном хосте. Постгрес настроен на прием запросов с любого хоста. При запуске приложения вне докер-контейнера (локально, на одной машине с постгрес) - все работает, подключается по IP машины в локальной сети. После сборки контейнера, Flask запускается - "/" отрабатывает, но при переходе на страницу с подключением к БД, страница уходит в долгую загрузку (зависает) и получаю ошибку: psycopg2.OperationalError: could not connect to server: Connection timed out Is the server running on host "192.168.88.250" and accepting TCP/IP connections on port 5432? Так собираю образ: docker build -t flask_in_docker:latest . Так собираю контейнер: docker run -d --name flask_docker -p 5000:5000 flask_in_docker
inqfen
Is the server running on host "192.168.88.250" and accepting TCP/IP connections on port 5432?
Artem
Is the server running on host "192.168.88.250" and accepting TCP/IP connections on port 5432?
спасибо, я действительно забыл открыть порт с одной машины все работало и с закрытым портом, хоть я и обращался на этот же IP
inqfen
Потому что ты в цепочку input не входил
inqfen
Учи основы
Николай
docker + chrome + pulseaudio- для эмуляции наличия колонок и микрофона. подскажите пожалуйста, так ли должно быть? Это для веб ртс приложения. При таких настройках не совсем корректно работает. оно кажется не видит эти аудиодевайсы что я создал. # запуск контейнера docker run -d -p 4444:4444 -v /dev/shm:/dev/shm selenium/standalone-chrome #зайти в запущенный контейнер docker exec -ti 467335b10a1c /bin/sh #выполнить команды в консоли apt-get -qq update apt-get -qq install -y pulseaudio # запуск pulseaudio pulseaudio -D --exit-idle-time=-1 # Create a virtual speaker output pactl load-module module-null-sink sink_name=SpeakerOutput sink_properties=device.description="Dummy_Output" # Create a virtual microphone pacmd load-module module-virtual-source source_name=VirtualMicrophone инфу об этом взял тут https://forums.docker.com/t/cant-make-audio-device-to-work-on-aws-solved/71852/3 может подскажете куда дальше копать что не так?
George
Ну, ясен пень
George
У тебя дивайсы в докер не прокидываются
George
Запускай в привилегированном режиме + проброс /dev
Николай
то есть то что я зашел в запущенной контейнер и там установил программу и запустил ее, никакого значения не имеет?
Николай
проброс dev зачем? имеется ввиду для аудиодевайсов /dev/snd ?
George
Устройства то нет
Николай
Йа
это создаст зависимость между реальным аудиоустройством моего хост компа и докер контейнера? но мне это не нужно. я бы хотел например 5 контейнеров одновременно запускать . все 5 одновременно к одному аудиодевайсу если будут коннектится будет не очень
Николай
Нет
а если докер билд сделаю?
Николай
Устройства то нет
ну я же вроде виртуальные создал
George
Фак
George
Давай ты разберёшься для начала каким образом работает аудио выход в линуксе ?
George
Докер точно не занимается микшированием - если ты умудришься как-то наставить в систему 5 звуковух, то в теории через докер ты сможешь распилить 1 контейнер на аудиокарту
George
В остальном... Ну, очень странное решение
George
а если докер билд сделаю?
Нет. Билд не факт, что создаёт файлы устройств. И уж точно не привязывает их к реальным и не даёт привилегий контейнеру
George
Подскажи, я внятно формулирую свою мысль ?
Николай
А что ты хочешь?
у нас веб ртс приложение работающее черех браузер хром. хочу проверять звук при звонках через это приложение. через два релаьных компа можно сделать звонок от одного к другому и проверить. хотелось бы это в докере реализовать
George
Изучи - можно ли пульсаудио настроить так, чтобы оно в файл стримило
George
Это вероятно и будет решением твоей задачи
George
Т.е. сделать вид будто звуковухи нет
Dmitry
Замечательные специалисты, а это нормально, что у меня контейнер php-fpm не коннектится к контейнеру host_percona по имени, но если его переименовать в host-percona - то все ок?
George
Ты rfc на доменные имена читал ?
George
И у тебя докер #компост ?
Dmitry
Ты rfc на доменные имена читал ?
никак нет, и докер компост
Dmitry
Ты rfc на доменные имена читал ?
теперь понял, латинские буквы (a-z), цифры (0-9) и дефис
George
никак нет, и докер компост
Он не по имени контейнера, а по имени сервиса фигачит
Andrey
Сам подшамань
Andrey
Это реально
Николай
selenoid спасёт тебя
попробую спс
Алексей Тарасов
Добрый день!подскажите как из контейнера подключитс на порт хостовой машины?
Ivan
Добрый день!подскажите как из контейнера подключитс на порт хостовой машины?
Зависит от того, в чем развернут докер, в виртуалке под виндой/маком или в линуксе
Алексей Тарасов
Все СПС я решел задачу
Никита
всем привет, подскажите плиз где можно посмотреть логи о падении сервисов docker?
Roman Karas`
всем привет, подскажите плиз где можно посмотреть логи о падении сервисов docker?
я обычно вот так смотрю Логи со всех контейнеров docker ps -q | xargs -L 1 docker logs --tail=0 --follow
Никита
я обычно вот так смотрю Логи со всех контейнеров docker ps -q | xargs -L 1 docker logs --tail=0 --follow
спасибо, нашел упавший контейнер docker ps -a и открыл его docker logs - по памяти нода упала
Roman Karas`
спасибо, нашел упавший контейнер docker ps -a и открыл его docker logs - по памяти нода упала
ну гут, или вот еще, логи самих сервисов для Убунты (в зависимости как сам сервис называется containerd или dockerd) Просмотр журнала логов journalctl /usr/bin/containerd -f journalctl /usr/bin/dockerd -f OR journalctl -u containerd.service -f
George
По умолчанию json-file
Roman Karas`
Для этого драйвер journald в докере должен стоять
Спасиб Георгий, я сам специально ничего не ставил, видимо по дефолту как-то сам стал
Oleg
Всем привет, не понимаю почему нет соединения с базой postgres. Через aws создал инстанс и через docker/docker-compose все запускаю. Помогите, пожалуйста решить проблему
Oleg
Roman Karas`
Всем привет, не понимаю почему нет соединения с базой postgres. Через aws создал инстанс и через docker/docker-compose все запускаю. Помогите, пожалуйста решить проблему
такое впечатление, что приложенька ломится на 127.0.0.1, а она же у вас в другом контейнере, насколько я правильно понял
Vladimir
У тебя бэкенд на свой локалхост долбится
Oleg
Это на инстансе я все поднимаю
Roman Karas`
О и посгрес порт неправильно проброшен
Oleg
Я 5432 изменил ) думал в нем дело
Vladimir
Это на инстансе я все поднимаю
Да нет разнице где, на ес2 инстансе или где. У тебя бэкенд не идёт в контейнер с базой, а проверяет свой внутренний локалхост. Сделай в компознике нетворк алиасы и ссылайся в конфиге бэка на нетворк алиас постгри
Roman Karas`
я тупо айпишки у себя в композере прописал, что-бы не менялись
Vladimir
я тупо айпишки у себя в композере прописал, что-бы не менялись
ну как вариант так. просто при переносе или прочей херне можешь наткнуться на проблемы. лично мне вариант с алиасом кажется более удобным)
Oleg
Roman Karas`
Может пригодится кому )) Только у меня еще веб-морда к посгресу отдельным контейнером поднимается
Vladimir
Так?
https://docs.docker.com/compose/compose-file/#aliases
Oleg
а, и данные базы я на самом хосте держу, вот
Спасибо! Сейчас так и так попробую
Roman Karas`
Спасибо! Сейчас так и так попробую
Там в вашем приложении главное посмотрите, что-бы вы к IP базы обращались или к алиасу, как Vladimir сказал, а то бек у вас на 127.0.0.1 ломится
Oleg
https://docs.docker.com/compose/compose-file/#aliases
Вот так через алиасы?
Vladimir
Вот так через алиасы?
вроде как все верно, попробуй запустить
Vladimir
Так стоп
Vladimir
Алиасы правильно. Конфиг подключения к базе нет