Evgeniy
крон контейнер это часть сервиса
George
в системди прекрасно все засовывается
Evgeniy
а разница между systemd и cron ?
George
просто докер это про "а давайте мы весь мусор засунен в контейнер и у нас не будет болеть голова"
Evgeniy
просто докер это про "а давайте мы весь мусор засунен в контейнер и у нас не будет болеть голова"
это твое трактовка докера, я считаю по другому, что докер это возможность запускать процессы в одинаковым окружение и необходимые тулзы для обмена этим окружением
George
ну, systemd дает больше чем докер - порядок запуска сервисов и пр. Единственная проблема, что он как раковая опухоль пророс во все кусочки линукса (в нем свой резолвер, свой днс, свой крон)
Evgeniy
если там всего один pid будет ?
George
самый вопиющий случай - это вольюмы (:z/:Z на центос надо прописывать, на убунте - не надо)
Evgeniy
какой может быть порядок запуска сервисов если всего один процесс ?
George
если там всего один pid будет ?
не важно, это докеро-проблемы, а не проблемы приложения внутри
Evgeniy
куда вас понесло
George
это как пример того, что и да, и нет - окружение все равно изолируется не полностью
Evgeniy
помойму от конкретной ситуации вас очень далеко понесло
Evgeniy
и вместо ответа "очевидно"
George
просто так и напиши, что считаешь, что я докер не осилил 👍
Evgeniy
можно было написать что логи надо писать в /proc/1/fd/0 например
Evgeniy
просто так и напиши, что считаешь, что я докер не осилил 👍
да вроде как ваши предложения стартовать systemd который бы определял порядок загрузки сервисов говорит об этом
manefesto
Привет Ловлю регулярно проблему что контейнер с nginx перестает принимать соединения Только перезапуск спасает Причем я могу зайти внуть контейнера без проблем, проблем с памятью и процом особо нет
manefesto
# docker-compose exec nginx /bin/sh / # ps ax PID USER TIME COMMAND 1 root 0:00 nginx: master process nginx -g daemon off; 27 nginx 0:01 nginx: worker process 28 nginx 0:00 nginx: worker process 34 nginx 0:00 nginx: worker process 35 nginx 0:00 nginx: worker process 36 root 0:00 /bin/sh 41 root 0:00 ps ax / # nginx -s reload только перезапуск
Artem
тоже такое было, пришлось перевести контейнер в network_mode: host
Artem
а в чем собственно проблема, хз
Artem
тоже хотел бы узнать
manefesto
Он у меня выступает в роли балансировщика
manefesto
version: "3.5" services: nginx: image: nginx:alpine container_name: nginx ports: - target: 80 published: 80 protocol: tcp mode: host - target: 443 published: 443 protocol: tcp mode: host volumes: - ./docker/nginx/etc/nginx/nginx.conf:/etc/nginx/nginx.conf - ./docker/nginx/etc/nginx/conf.d:/etc/nginx/conf.d networks: - frontend_network networks: frontend_network: external: true
manefesto
всё достаточно тривиально
manefesto
блин, selinux включен
Evgeniy
у меня тоже некоторые чудеса бывают, только я traefik юзаю для балансировки
LEXASOFT
у сворма же нет mode host
George
Выглядит слишком многословно. А если не сворм, то зачем version: 3.5?
manefesto
а почему нет ? взял последнюю поддерживаемую моей версией докера
manefesto
Сейчас прохожу квест, как собрать расширение в докере, фишка в том что он требует google-chrome
Max xbim 🌴
а почему нет ? взял последнюю поддерживаемую моей версией докера
потому что новые фишки в 3.0+ добавлюятся только для swarm , для обычного композ достаточно 2.0
manefesto
ну наверное хуже не будет
Max xbim 🌴
George
ну наверное хуже не будет
Ну, в 3м нет service_depends on_healthy
George
Полезная штука, кмк
Aleksey
господа, а какая опция для является аналогом --mount докера для docker-compose ?
George
ща
George
volumes: - type: bind source: $PWD/data/mysql target: /var/lib/mysql/ - type: bind source: $PWD/logs/mysql target: /opt/mysql_logs/ - type: bind source: $PWD/config/mysql/my.cnf target: /etc/mysql/my.cnf
George
оно?
Aleksey
я не уверен :) поэтому и спрашиваю
Aleksey
я хочу достигнуть такого вот поведения If you use -v or --volume to bind-mount a file or directory that does not yet exist on the Docker host, -v creates the endpoint for you. It is always created as a directory. If you use --mount to bind-mount a file or directory that does not yet exist on the Docker host, Docker does not automatically create it for you, but generates an error.
George
да, это оно
Aleksey
что бы если файла/директории не было оно не создалось
George
пример выше в сниппете - я проверял, докер не создает, если их нет
Aleksey
а окей спасибо
Aleksey
не создает и падает ?
George
да
George
не может стартануть контейнер
Aleksey
нда. хрен редьки не слаще. спасибо
manefesto
ну хз, у меня создает, а контейнер не стартует скорей всего потом что если нет файла, то он считает что это папка и подключает её внутрь контейнера, а тот же самый mysql офигевает почему это вместо файла папка
George
И вообще докер 💩💩💩💩
Aleksey
Там ещё варианты есть. А что если я хочу чтобы файл который я монтирую не заменял текущий? Такое
George
Там в доке докера есть очень наглядная табличка со всеми вариантами
Aleksey
Ужс
Костяныч
Привет всем. Как в линукс запускать без рут прав докер. Как понял можно от имени юзара, что входит в группу docker . но если я простой сотрудник, где злые ит безопасники и нужно доказывать, что нужно это и почему так, так как мне не кто не даст крутые права полубога и им проще отказать. Как быть?
Aleksey
Иди договаривайся
George
Тот же редхат говорит - либо отказывайтесь от докера в пользу podman, либо давайте sudo только на нужные команды с нужными контейнерами
manefesto
поднимать виртуалку
George
Понимаешь, никто не будет запускать сам докер демон не от рута. Это бред. А средств управления доступа к нему (как rbac) тупо нет
George
Кто получает доступ к докеру - в теории получает доступ ко всей системе
Aleksey
Вообще containerd можно без рута
Aleksey
Но как именно я пока не разобрался
Костяныч
Но как именно я пока не разобрался
Ок буду исследовать а пока не хорошо. Даже скомпилить образ докера и то нужен рут как я понял. Это бред какой то
George
Или umoci + skopeo
Костяныч
Используй buildah, kaniko
Это совместимо с докерами или свой велик?
George
Это совместимо с докерами или свой велик?
По формату образов - везде oci, так что - да, совместимо
Dmitry
Народ привет Кто знает можно ли из баш скрипта передавать переменные внутрь контейнера?