George
Ты гит в докере держишь?
Anton
а причем тут пустая папка? А файлы в ней с какими правами будут создаваться?))
George
Вообще на это umask влияет
Evgeniy
у чувака есть репозиторий и докер композ и там приложение хочет писать логи в ФАЙЛЫ
Evgeniy
правильней логи перенаправить на stdout и stderr
Evgeniy
если уж говоорить о правильном пути
и не ебаться с установкой юзера
Evgeniy
то касается кэша, перенести его в контейнер с redis
Evgeniy
и все это вообще не вопросы докера, там на скрине symfony вроде
Anton
Ладно, мы гоняем из пустого в порожне. На линуксе права работают как и задумывалось, поэтому нужно следить за тем из-под какого UID PHP будет создавать файлы (если нужно иметь доступ к ним с хост машины). MacOS игнорирует эти права, там с хоста доступ к файлам, созданными контейнером, есть всегда, там можно ничего не делать. Спорить тут не о чем))
Evgeniy
Anton
Помимо логов и кеша создаются и другие файлы. Те же фреймворки позволяют через CLI команды создавать файлы. Поэтому тактика с переносом всего и вся за пределы файловой системы - провальная
Evgeniy
мой опыт меня привел к пункту два из этого списка
но я пробывал каждое из этих решений и указывал конкретные кейсы с которыми сталкивался
как например что uid другой и там были какие то сложности с правами на маках, я только не помю какая именно версия докера была и как он там был
Anton
Ну а ебашить три топора на весь проект - это, простите, даже обсуждать не хочу
George
George
Не в bind mount
Evgeniy
Суй в вольюмы
не не проканает)
по крайне мере у меня не получалось сделать это удобно)
George
Надо в файлы полазить - делай отдельный контейнер )
George
Или использовать всякие docker rsync (фууууу)
George
George
Но ты выбрал докер - страдай
Anton
та вон же Женя предлагает)
Evgeniy
в мире пхп есть всякие "помощники" которые генерируют шаблоны файлов и записывают их в дефолтные папки - фитча мягко говоря сомнительная, но в мире пхп распространена
Evgeniy
филосфия докера не писать в контейнер и ее надо стараться следовать
George
George
На локалке разраб может творить что угодно
Evgeniy
моими устами ...
Evgeniy
ну да ладно.
Evgeniy
просто я помню что году в 2018 была трабла на маках с юзером, так как в маках uid, gid по дефолту отличался от винды и linux
приходилось выносить UID, GID в .env и если его не проставляли использовал 1000
как сейчас с этой проблемой в маках я понятие не имею, но сложность такая была и возможно она гуглится.
в остальном вариант юзер вполне норм решение и его я упомянул самым первым и ссылку на доку скинул
но правильней (по моему мнению) конкретно в том кейсе, сразу делать канонично, выносить логи в stdout, выносить кэши в редис, а для создания шаблонов файлов юзать ide, ну или запускать с указанием пользователя.
Dmitriy
Пётр
Есть докер контейнер, я запускаю в нём скрипт, из крона через docker exec вопрос: куда перенаправлять вывод, чтобы видеть его в docker logs?
George
В /proc/1/fd/1
Andrew
Сергей
СПАСИБО! 👍👍👍👍👌
Andrew
Если кратко, под свою локаль надо собирать свой кастомный образ и юзать его
Сергей
😕 Не хотел я идти этим путем. Ну да ладно. Спасибо еще раз!
Николай
😕 Не хотел я идти этим путем. Ну да ладно. Спасибо еще раз!
Я больше чем уверен, что так делать не стоит и это греховно, но все же…
Делал докерфайл на основе постгресовского, а потом просто выполнялась череда команд на установку русской локали, ибо в контейнере в списке доступных её не было.
locale-gen ru_RU.UTF-8 && \
sed -i -e 's/# ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/' /etc/locale.gen && \
sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
dpkg-reconfigure --frontend=noninteractive locales
sed -i -e 's/# ru_RU.UTF-8 UTF-8/ru_RU.UTF-8 UTF-8/ ; s/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/ ' /etc/locale.gen
localedef -i ru_RU -c -f UTF-8 -A /usr/share/locale/locale.alias ru_RU.UTF-8
CREATE DATABASE TEST_DB
WITH OWNER = test_user
ENCODING = 'UTF8'
LC_COLLATE = 'ru_RU.utf8'
LC_CTYPE = 'ru_RU.utf8';
Николай
Сейчас смотрю на это со стороны и выглядит страшно 😟 но когда-то такой способ помог
Сергей
Andrew
Andrew
Есть ещё варианты
- Написать башскрипт с командой localedef и положить его в /docker-entrypoint-initdb.d (писать внимательно и идемпотентно) и сделать экспорт
- пробросить нужный файл с host-системы (через volumes) и установить эту переменную через environments
Deni
Всем привет!
Краткое предисловие: Работаю на windows 11, запускаю контейнер в докере для тестов
Теперь вопрос: при попытке запустить скрипт в powershell скрипт запускается из директории mnt/host/c + путь до запускаемой папки локальной
Ругается на отсутствие node и соответственно запуск невозможен
Мои мысли, что я все равно запускаюсь в каком-то образе докера, хотя я его вырубил, как мне запускать мои исполняемые файлы из моей корневой директории в данном случае?
То есть вопрос в том как отключить исполнение файла из образа
Kami
Всем привет, кто нибудь поднимал инструмент отчетности BIRT в докере?
Павел
Народ, я в докере могу слить что-то и запустить контейнер, поэтому нужна помощь. Есть несколько вопросов. первый это вот такая хрень
Павел
я помню раньше тут можно было выделять память и тд, как теперь это все настраивать. Я ниразу не devops и у меня винда
Павел
есть такой ответ https://stackoverflow.com/a/62773629/11926338
но где найти инструкцию как конфигурировать файл .wslconfig типо какие там возможные значения
Иван
Евгений
Привет. Может кто подсказать, как справится медленными запросами к бд через докер? В гугле пишут добавить
volumes:
- ./mysql/:/var/lib/mysql
Но мне не помогло
George
Никак. В твоём случае надо сравнить с производительностью нативного мускуля на той же машине
George
Если разницы не будет - докер не виноват
Евгений
Разница есть
Евгений
На виртуалке все быстро грузится
Mr.
почему докер не удаляется?
Дмитрий
Здравствуйте. У меня вопрос по статике, есть картинке, которые я храню на сервере в папке dist-static-images. Как мне отдавать статику фронту? Стек next-nest TRAEFIK. Без докера все работает офк, но с докером не получется
George
George
Евгений
George
Да
Тогда сравнивай конфиг файлы
George
Они могут отличаться при установке на хост и в докер. Плюс попробуй контейнер в host network mode запустить - мало ли сетевой стек докера тормозит, так ты сможешь его исключить
Евгений
Mr.
Попробую позже. Спасибо
C:\Program Files\Docker\Docker>docker info
Client:
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc., v0.8.2)
compose: Docker Compose (Docker Inc., v2.6.0)
sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc., 0.6.0)
scan: Docker Scan (Docker Inc., v0.17.0)
Server:
ERROR: error during connect: This error may indicate that the docker daemon is not running.: Get "http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.24/info": open //./pipe/docker_engine: The system cannot find the file specified.
errors pretty printing info
Mr.
Как это исправить?
Mr.
Mr.
Mr.
Mr.
Mr.
Mr.
И как догнать , почему докер не работает)?
Artyom
Artyom
Скорее всего виртуалка докера не поднята
Mr.
Artyom
Artyom
Это причина, по которой ничего не работает
Mr.
А как его запустить?
Mr.
Демон
Artyom
Вдруг сработает
Mr.