Forwarded from Записки админа
This media is not supported in your browser
VIEW IN TELEGRAM
⚙️ Dive - интересная утилита, позволяющая изучить содержимое образа контейнера слой за слоем.
А ещё, вот тут статья занятная, о том как человек примерно то же самое делал вручную - Reverse Engineering a Docker Image.
#container #docker #напочитать
А ещё, вот тут статья занятная, о том как человек примерно то же самое делал вручную - Reverse Engineering a Docker Image.
#container #docker #напочитать
Forwarded from Sysadmin Tools 🇺🇦
Docker without Docker
https://fly.io/blog/docker-without-docker/
#docker #containerd #rust #golang #firecracker
https://fly.io/blog/docker-without-docker/
#docker #containerd #rust #golang #firecracker
Fly
Docker without Docker
Our users deliver software to us as Docker containers, but we don’t use Docker to run them. We transmogrify container images into Firecracker micro-VMs. Here's how.
Forwarded from Mops DevOps
Перевели для вас статью
20 лучших практик по работе с Docker-файлами
Эта статья содержит рекомендации по написанию Dockerfile и принципам безопасности контейнеров и некоторые другие связанные темы, например про оптимизацию образов.
Если вы знакомы с контейнеризованными приложениями и микросервисами, то скорее всего понимаете, что хотя ваши сервисы "микро", но поиск уязвимостей и устранение проблем с безопасностью способен затруднить управление вашими сервисами, уже с приставкой "макро".
К счастью, большинство потенциальных проблем мы можем решить еще на этапе разработки.
#docker
20 лучших практик по работе с Docker-файлами
Эта статья содержит рекомендации по написанию Dockerfile и принципам безопасности контейнеров и некоторые другие связанные темы, например про оптимизацию образов.
Если вы знакомы с контейнеризованными приложениями и микросервисами, то скорее всего понимаете, что хотя ваши сервисы "микро", но поиск уязвимостей и устранение проблем с безопасностью способен затруднить управление вашими сервисами, уже с приставкой "макро".
К счастью, большинство потенциальных проблем мы можем решить еще на этапе разработки.
#docker
Forwarded from Mops DevOps
Pro K8s
Kubernetes setup with CRI-O Runtime 👋
Пример создания кластеров Kubernetes с использованием среды выполнения контейнеров CRI-O вместо Docker.
👉 https://bit.ly/2QqtYBB
#kubernetes #crio #docker
Kubernetes setup with CRI-O Runtime 👋
Пример создания кластеров Kubernetes с использованием среды выполнения контейнеров CRI-O вместо Docker.
👉 https://bit.ly/2QqtYBB
#kubernetes #crio #docker
Forwarded from Админим с Буквой (bykva)
Делаем резервные копии postgres на s3 (minio)
В гисте приложен кусочек плейбука ansible который настраивает резервное копирование через mc клиент. скрипт умеет выгружать в bucket по-отдельности каждую базу из списка, оценивать размер и время совершения последнего копирования каждой базы и отдавать эту информацию в формате prometheus, а также подчищать из s3 устаревшие копии.
https://gist.github.com/bykvaadm/434a4eef5392528c9c0e4788937301bc
#postgres
#docker
#patroni
#ansible
#minio
#prometheus
В гисте приложен кусочек плейбука ansible который настраивает резервное копирование через mc клиент. скрипт умеет выгружать в bucket по-отдельности каждую базу из списка, оценивать размер и время совершения последнего копирования каждой базы и отдавать эту информацию в формате prometheus, а также подчищать из s3 устаревшие копии.
https://gist.github.com/bykvaadm/434a4eef5392528c9c0e4788937301bc
#postgres
#docker
#patroni
#ansible
#minio
#prometheus
Gist
Postgres patron backup on Minio with prometheus monitoring
Postgres patron backup on Minio with prometheus monitoring - README.md
Forwarded from Mops DevOps
Перевели для вас отличную статью
Сеть контейнеров — это не сложно 🤩
Работа с контейнерами многим кажется волшебством, пришло время разобраться как работает сеть Docker. Мы покажем на примерах, что это совсем не сложно. Нам потребуется немного сетевой магии и никакого кода ...
В этой статье мы ответим на следующие вопросы:
- Как виртуализировать сетевые ресурсы, чтобы контейнеры думали, что у каждого из них есть выделенный сетевой стек?
- Как превратить контейнеры в дружелюбных соседей, не дать им мешать друг другу и научить хорошо общаться?
- Как настроить сетевой доступ из контейнера во внешний мир (например, в Интернет)?
- Как получить доступ к контейнерам, работающим на сервере, из внешнего мира (публикация портов)?
#docker
Сеть контейнеров — это не сложно 🤩
Работа с контейнерами многим кажется волшебством, пришло время разобраться как работает сеть Docker. Мы покажем на примерах, что это совсем не сложно. Нам потребуется немного сетевой магии и никакого кода ...
В этой статье мы ответим на следующие вопросы:
- Как виртуализировать сетевые ресурсы, чтобы контейнеры думали, что у каждого из них есть выделенный сетевой стек?
- Как превратить контейнеры в дружелюбных соседей, не дать им мешать друг другу и научить хорошо общаться?
- Как настроить сетевой доступ из контейнера во внешний мир (например, в Интернет)?
- Как получить доступ к контейнерам, работающим на сервере, из внешнего мира (публикация портов)?
#docker
Forwarded from Mops DevOps
Различия между Docker, containerd, CRI-O и runc
Появление Docker привело к взрывному росту популярности контейнеров, но с тех пор появились и другие инструменты. К сожалению, разобраться в них может быть совсем непросто. Но мы попробуем! И если вы считаете себя единственным, кто всего этого пока не понимает, не волнуйтесь... Это не так!
👉 https://bit.ly/3ArBPkB
#docker #containerd #crio
Появление Docker привело к взрывному росту популярности контейнеров, но с тех пор появились и другие инструменты. К сожалению, разобраться в них может быть совсем непросто. Но мы попробуем! И если вы считаете себя единственным, кто всего этого пока не понимает, не волнуйтесь... Это не так!
👉 https://bit.ly/3ArBPkB
#docker #containerd #crio
Forwarded from Sysadmin Tools 🇺🇦
Тренды Kubernetes и контейнеризации в 2021 году
https://habr.com/ru/company/flant/blog/591475
#k8s #kubernetes #docker
https://habr.com/ru/company/flant/blog/591475
#k8s #kubernetes #docker
Хабр
Тренды Kubernetes и контейнеризации в 2021 году. Что общего в исследованиях Datadog, Red Hat, CNCF и других
Недавно компания Datadog, разработчик одноименной системы мониторинга, представила свой обновленный отчет « 10 трендов использования контейнеров в реальном мире ». Авторы исследования проанализировали...
👍1
Forwarded from ServerAdmin.ru
Знатную уязвимость подвезли в Linux под номером CVE-2022-0185. Обычно не публикую крупные новости, которые и так из всех источников идут, но тут решил сделать исключение из-за эпичности дыры. Наверняка полно людей, кто не знает о ней. Я сам только вчера вечером прочитал.
Имея права пользователя в системе, можно получить root. Демонстрация работы есть на Github. Подобная уязвимость работает во всех Ubuntu из-за того, что там по дефолту включены user namespaces, чего нет, к примеру, в Debian и RHEL, если не используются контейнеры. Вот тут то ориентированность на простоту и удобство Ubuntu сыграла злую шутку. Чтобы лишний раз не дёргать настройку, её включили по дефолту.
Но вообще, это уязвимость ядра Linux 5.1 и выше, так что все другие дистры с этим ядром тоже ей подвержены и обязательно нужно обновляться, если на хосте используются контейнеры. Если у вас Centos 7 или Ubuntu 18, можно не суетиться. Там более старые ядра.
Если обновление по какой-то причине невозможно, то user_namespaces Redhat советует отключить вот так:
А Ubuntu так:
Хороший повод лишний раз поразмыслить над удобством контейнеров. В виртуальных машинах получить такую дырищу значительно труднее. Я вообще не припомню, чтобы были CVE с побегом из VM на хост. А в контейнерах уже не первый раз.
Примечательно, что код, содержащий эту уязвимость, добавлен около трех лет назад. Кто-то всё это время мог эксплуатировать уязвимость. А сколько их ещё таких там есть?
https://ubuntu.com/security/CVE-2022-0185
https://access.redhat.com/security/cve/CVE-2022-0185
https://bugzilla.redhat.com/show_bug.cgi?id=2040358
#security #ubuntu #docker #devops
Имея права пользователя в системе, можно получить root. Демонстрация работы есть на Github. Подобная уязвимость работает во всех Ubuntu из-за того, что там по дефолту включены user namespaces, чего нет, к примеру, в Debian и RHEL, если не используются контейнеры. Вот тут то ориентированность на простоту и удобство Ubuntu сыграла злую шутку. Чтобы лишний раз не дёргать настройку, её включили по дефолту.
Но вообще, это уязвимость ядра Linux 5.1 и выше, так что все другие дистры с этим ядром тоже ей подвержены и обязательно нужно обновляться, если на хосте используются контейнеры. Если у вас Centos 7 или Ubuntu 18, можно не суетиться. Там более старые ядра.
Если обновление по какой-то причине невозможно, то user_namespaces Redhat советует отключить вот так:
# echo "user.max_user_namespaces=0" > /etc/sysctl.d/userns.conf# sysctl -p /etc/sysctl.d/userns.confА Ubuntu так:
# sysctl -w kernel.unprivileged_userns_clone = 0Хороший повод лишний раз поразмыслить над удобством контейнеров. В виртуальных машинах получить такую дырищу значительно труднее. Я вообще не припомню, чтобы были CVE с побегом из VM на хост. А в контейнерах уже не первый раз.
Примечательно, что код, содержащий эту уязвимость, добавлен около трех лет назад. Кто-то всё это время мог эксплуатировать уязвимость. А сколько их ещё таких там есть?
https://ubuntu.com/security/CVE-2022-0185
https://access.redhat.com/security/cve/CVE-2022-0185
https://bugzilla.redhat.com/show_bug.cgi?id=2040358
#security #ubuntu #docker #devops