𝕎𝕒𝕣𝕞
Ну что я имею, из одного контейнера не доходит коннект до второго
𝕎𝕒𝕣𝕞
Очень странно
𝕎𝕒𝕣𝕞
Странно как то, кто во что горазд пишет
𝕎𝕒𝕣𝕞
Куча способов запустить докер
Юра
что показывает ping postgres из пхп?
𝕎𝕒𝕣𝕞
Юра
выполни docker inspect postgres и посмотри внизу будет "IPAddress": ".....",
Юра
совпадают ли они?
Юра
покажи свой .env.local что там за DATABASE_URL
𝕎𝕒𝕣𝕞
Юра
сопадают ок
Юра
что там в .env.local
𝕎𝕒𝕣𝕞
что там в .env.local
###> symfony/framework-bundle ###
APP_ENV=dev
APP_SECRET=8e7d3b1ecad48014a8ef380bbb373f6b
###< symfony/framework-bundle ###
###> doctrine/doctrine-bundle ###
DB_PASS=a6yXCgL7ZEFDKdCoeJMbT3xlulEuwaWDCxXeWaMKcZKZrCLm6yI2sYpNV7wEOcav
#DATABASE_URL="mysql://root:${DB_PASS}@127.0.0.1:3306/darkness?serverVersion=8.0&charset=utf8mb4"
DATABASE_URL="postgresql://root:${DB_PASS}@postgres:5432/darkness?serverVersion=14.5&charset=utf8"
###< doctrine/doctrine-bundle ###
###> lexik/jwt-authentication-bundle ###
JWT_SECRET_KEY=%kernel.project_dir%/config/jwt/private.pem
JWT_PUBLIC_KEY=%kernel.project_dir%/config/jwt/public.pem
JWT_PASSPHRASE=04c2328689bed44d31532d6a7ea74b89
###< lexik/jwt-authentication-bundle ###
Юра
ок что говорит
php bin/console d:s:validate ?
𝕎𝕒𝕣𝕞
Юра
из фпм контейнера
Юра
а откуда еще?
Юра
у тебя вообще по идее не должно быть пхп на хосте
𝕎𝕒𝕣𝕞
из фпм контейнера
Mapping
-------
[OK] The mapping files are correct.
Database
--------
[ERROR] The database schema is not in sync with the current mapping file.
2022-08-13T17:00:15+00:00 [info] User Deprecated: The "Symfony\Bridge\Doctrine\Logger\DbalLogger" class implements "Doctrine\DBAL\Logging\SQLLogger" that is deprecated Use {@see \Doctrine\DBAL\Logging\Middleware} or implement {@see \Doctrine\DBAL\Driver\Middleware} instead.
Юра
значит все конектит
Юра
вопросы?
Юра
какой тест?
Юра
откуда ты его запускаешь?
Юра
если ты запускаешь тест из хоста, то твой хост ничего не знает про postgres
𝕎𝕒𝕣𝕞
𝕎𝕒𝕣𝕞
𝕎𝕒𝕣𝕞
Юра
а в контейнере запускаются тесты?
𝕎𝕒𝕣𝕞
𝕎𝕒𝕣𝕞
должны по крайней мере
𝕎𝕒𝕣𝕞
делал всё по мануалу, и не работает
Юра
ну запусти тесты в контейнере
Юра
зайти в контейнер
Юра
и руками запусти тесты
𝕎𝕒𝕣𝕞
а как?
Юра
как запустить тесты?
Юра
может там другая БД прописана у тебя для тест энвайрмента
𝕎𝕒𝕣𝕞
...а ведь точно, кароч завтра чекну конфигурацию доктрины
𝕎𝕒𝕣𝕞
𝕎𝕒𝕣𝕞
То что в любом случае сервер не видит, или если бд неправильная он также ошибку кидает
Юра
ну ты пинговал
Юра
пингвал все было ок
Юра
значит должно видеть postgres
𝕎𝕒𝕣𝕞
100% я в файле конфига не закоментировал
𝕎𝕒𝕣𝕞
он запрашивает другую бд
Юра
Уже на докер начал гнать
Юра
От уже
Юра
Докер уже на стольких серверах в проде что вероятность багов там минимальная думаю уже
𝕎𝕒𝕣𝕞
Уже на докер начал гнать
Решение было таким: у меня автоматическая конфигурация phpunti была настроена на докер, я перенастроил на docker compose с указанием compose, теперь коннект прошел успешно, и тесты пройдены, спасибо, я зря на докер гнал
Юра
Заодно выполни docker volume ls
Юра
Посмотри не наплодил ли шторм миллион имаджей
𝕎𝕒𝕣𝕞
𝕎𝕒𝕣𝕞
Немножко)) Ну пускай лежит
𝕎𝕒𝕣𝕞
или стоп, он с каждым тестом новый создаёт теперь?
Юра
Я не помню по-моему как раз если выбран докер композ то не создает
𝕎𝕒𝕣𝕞
Юра
я просто настроил как-то пхпстан через ремоут интерпретатор так он на кажое изменение файла создавал вольюм
Юра
А итоге сожрал 10 гигабайт места за пол часа
𝕎𝕒𝕣𝕞
𝕎𝕒𝕣𝕞
Кароче докер инструмент, но в неумелых руках он может быть опасен
Юра
Мгогие не знают разницу в run и exec в докере
𝕎𝕒𝕣𝕞
𝕎𝕒𝕣𝕞
Я просто в bash проваливался и там выполнял
Юра
The docker run command first creates a writeable container layer over the specified image, and then starts it using the specified command. T
Юра
Exec выполняет внутри имеющегося контейнера
Юра
Без создания нового
Юра
Проваливаться в контейнер надо через exec
𝕎𝕒𝕣𝕞
Юра
Еще выполни на всякий docker ps -a
𝕎𝕒𝕣𝕞
Юра
И посмотри количество контейнеров
𝕎𝕒𝕣𝕞
Юра
Посмотри нет ли миллиона контейреров
Юра
docker ps по дефолту показывает только запущенные
𝕎𝕒𝕣𝕞
5 штук
Юра
Ок. Еще есть полезнач команда prune
Юра
Если вдруг насоздаавалось мусора