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 трендов использования контейнеров в реальном мире ». Авторы исследования...
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
Forwarded from Mops DevOps
Может вы еще не знаете про обновление лицензионного соглашения Docker Decktop 🤔
Commercial use of Docker Desktop in larger enterprises (more than 250 employees OR more than $10 million USD in annual revenue) now requires a paid subscription. The grace period for those that will require a paid subscription ends on January 31, 2022.
Минимальный тариф - 5$ на каждого разработчика в месяц 💸
👉 Подробности
#docker
Commercial use of Docker Desktop in larger enterprises (more than 250 employees OR more than $10 million USD in annual revenue) now requires a paid subscription. The grace period for those that will require a paid subscription ends on January 31, 2022.
Минимальный тариф - 5$ на каждого разработчика в месяц 💸
👉 Подробности
#docker
Forwarded from ServerAdmin.ru
Всем хорошо известен продукт Gitlab, который закрывает несколько базовых потребностей современной разработки: хранение кода, сборка и деплой, хранение образов. И всё это реализовано в единой платформе.
Обратной стороной этого удобства является высокие требования по железу, избыточный во многих случаях функционал, перегруженный, не слишком отзывчивый веб интерфейс.
Я хочу предложить на рассмотрение альтернативную сборку из отдельных компонентов, которые в сумме предоставляют такой же базовый функционал. Не хочу сказать, что это прямой аналог, но в некоторых простых ситуациях это может быть полноценная, но более лёгкая замена Gitlab.
Gitea - легковесная Open Source-система для управления Git-репозиториями, которую можно развернуть на своем сервере. Отличает её простота установки и настройки, низкие требования к производительности. В самом простом случае Gitea может использовать базу данных SQLite.
Drone CI - популярная система непрерывной интеграции, написанная на Go. Также отличается легковесностью (docker образ ~24Мб), простым синтаксисом yaml файлов для сборки. Легко интегрируется с любым git репозиторием и хранилищем docker образов. Отлично подходит для знакомства с ci/cd на основе docker контейнеров.
Docker Registry 2.0 - вариант локального registry от самой компании Docker. Тоже очень простой продукт с минимальными требованиями к железу. Размер docker контейнера, в котором он запускается 8Мб. При желании к нему можно установить веб интерфейс - docker-registry-ui.
Указанный набор программ связывается между собой в единую систему, обеспечивая базовый функционал по разработке и доставке софта на базе docker контейнеров. Drone CI расширяет функционал с помощью плагинов. Например, плагин для отправки уведомлений в telegram, запуска удалённых команд по ssh, выполнения webhook и т.д.
Если есть идеи, чем можно заменить одну из предложенных программ, предлагайте в комментариях. Я сделал акцент на легковесности и простоте установки, настройки.
Gitea - https://github.com/go-gitea/gitea
Drone - https://github.com/harness/drone
Registry 2.0 - https://hub.docker.com/_/registry
#docker #devops #git
Обратной стороной этого удобства является высокие требования по железу, избыточный во многих случаях функционал, перегруженный, не слишком отзывчивый веб интерфейс.
Я хочу предложить на рассмотрение альтернативную сборку из отдельных компонентов, которые в сумме предоставляют такой же базовый функционал. Не хочу сказать, что это прямой аналог, но в некоторых простых ситуациях это может быть полноценная, но более лёгкая замена Gitlab.
Gitea - легковесная Open Source-система для управления Git-репозиториями, которую можно развернуть на своем сервере. Отличает её простота установки и настройки, низкие требования к производительности. В самом простом случае Gitea может использовать базу данных SQLite.
Drone CI - популярная система непрерывной интеграции, написанная на Go. Также отличается легковесностью (docker образ ~24Мб), простым синтаксисом yaml файлов для сборки. Легко интегрируется с любым git репозиторием и хранилищем docker образов. Отлично подходит для знакомства с ci/cd на основе docker контейнеров.
Docker Registry 2.0 - вариант локального registry от самой компании Docker. Тоже очень простой продукт с минимальными требованиями к железу. Размер docker контейнера, в котором он запускается 8Мб. При желании к нему можно установить веб интерфейс - docker-registry-ui.
Указанный набор программ связывается между собой в единую систему, обеспечивая базовый функционал по разработке и доставке софта на базе docker контейнеров. Drone CI расширяет функционал с помощью плагинов. Например, плагин для отправки уведомлений в telegram, запуска удалённых команд по ssh, выполнения webhook и т.д.
Если есть идеи, чем можно заменить одну из предложенных программ, предлагайте в комментариях. Я сделал акцент на легковесности и простоте установки, настройки.
Gitea - https://github.com/go-gitea/gitea
Drone - https://github.com/harness/drone
Registry 2.0 - https://hub.docker.com/_/registry
#docker #devops #git
Forwarded from Sysadmin Tools 🇺🇦
Colima is a container runtimes on macOS (and Linux) with minimal setup
https://github.com/abiosoft/colima
#docker #podman #k3s #containerd
https://github.com/abiosoft/colima
#docker #podman #k3s #containerd
Forwarded from Sysadmin Tools 🇺🇦
dyrector.io
demo
#docker #containers #kubernetes
is a self-hosted container management platform
https://github.com/dyrector-io/dyrectoriodemo
#docker #containers #kubernetes
Forwarded from KazDevOps
И еще один глобальный репозиторий на сегодня.
Более 1000 сценариев оболочки DevOps и расширенная среда Bash для быстрого, передового проектирования систем, автоматизации, API и т.д.
Вы найдете:
👉🏻 Сборка активно используется во многих репозиториях GitHub, десятках сборок Docker Hub (Dockerfiles) и более чем 600 сборках CI.
#devops #devsecops #kubernetes #cicd #k8s #linux #docker #sysadmin #automation #Azure #infrastructureascode #cloudcomputing #serverless #terraform #ansible #yaml #sre
@DevOpsKaz
Более 1000 сценариев оболочки DevOps и расширенная среда Bash для быстрого, передового проектирования систем, автоматизации, API и т.д.
Вы найдете:
•
Скрипты для многих популярных технологий DevOps •
Расширенные настройки для Git, vim, screen, tmux, PostgreSQL, psql и т. д. •
Конфигурации CI и сценарии •
Конфигурации Kubernetes •
Скрипты API •
SQL-скрипты👉🏻 Сборка активно используется во многих репозиториях GitHub, десятках сборок Docker Hub (Dockerfiles) и более чем 600 сборках CI.
#devops #devsecops #kubernetes #cicd #k8s #linux #docker #sysadmin #automation #Azure #infrastructureascode #cloudcomputing #serverless #terraform #ansible #yaml #sre
@DevOpsKaz
Forwarded from Sysadmin Tools 🇺🇦
kraken
#docker #registry
Kraken is a P2P-powered Docker registry that focuses on scalability and availability. It is designed for Docker image management, replication, and distribution in a hybrid cloud environment. With pluggable backend support, Kraken can easily integrate into existing Docker registry setups as the distribution layer.
Kraken has been in production at Uber since early 2018. In our busiest cluster, Kraken distributes more than 1 million blobs per day, including 100k 1G+ blobs. At its peak production load, Kraken distributes 20K 100MB-1G blobs in under 30 sec.
https://github.com/uber/kraken#docker #registry
Forwarded from GitHub'ненько
Docker Scout CLI
Docker Scout is a set of software supply chain features integrated into Docker's user interfaces and command line interface (CLI). These features offer comprehensive visibility into the structure and security of container images.
#containers #security #docker
https://github.com/docker/scout-cli
Docker Scout is a set of software supply chain features integrated into Docker's user interfaces and command line interface (CLI). These features offer comprehensive visibility into the structure and security of container images.
#containers #security #docker
https://github.com/docker/scout-cli
Forwarded from DevOps FM
На Blacksmith вышло понятное руководство по многоэтапным сборкам Docker. В статье вы найдете рекомендации по подбору базового образа для каждого этапа сборки и оптимизации порядка этапов.
#docker #dockerfile #bestpractices
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from DevOps FM
Docker объявили об изменениях после обратной связи от сообщества. Команда Docker пересмотрела свои планы, чтобы улучшить поддержку экосистемы и опыт пользователей.
Смотрим на изменения:
1. Оплата за скачивание образов отменена
Docker отказались от планов по введению платы для всех пользователей. Объяснили это желанием укрепить платформу и предоставить разработчикам возможность создавать, делиться и внедрять инновации без ненужных барьеров.
2. Обновление лимитов на скачивание
Теперь для неаутентифицированных пользователей будет доступно 10 pull-запросов в час. Аутентифицированным пользователям увеличили лимит с 40 до 100 запросов в час. Для пользователей с подпиской ограничений не планируется.
3. Отсрочка платы за хранение
Планы по введению платы за хранение данных на Docker Hub отложены на неопределённый срок. Вместо этого Docker сосредоточится на создании инструментов для управления хранилищем. О любых изменениях в политике будет объявлено за 6 месяцев.
Изменения вступают в силу с 1 апреля этого года.
#DevOps #Docker #DockerHub
Please open Telegram to view this post
VIEW IN TELEGRAM