Я подумал, что неплохо было бы сегодняшний день посвятить контейнерам. А то как-то так получилось, что DevOps-DevOps, а о контейнерах ещё ничего не было - нелья так.
Чтобы ввести в курс дела (мало ли) статья о контейнерах вообще. Отличиях виртуализации от контейнеризации и почему это всем так сначала понравилось.
Дальше блог о том, как человек перенёс своё окружение разработчика из Vagrant в Docker с наглядными практическими рекомендациями.
Ну и напоследок ещё один блог с примерами для разных языков программирования
#containers #docker
Чтобы ввести в курс дела (мало ли) статья о контейнерах вообще. Отличиях виртуализации от контейнеризации и почему это всем так сначала понравилось.
Дальше блог о том, как человек перенёс своё окружение разработчика из Vagrant в Docker с наглядными практическими рекомендациями.
Ну и напоследок ещё один блог с примерами для разных языков программирования
#containers #docker
Usersnap blog
A Beginner's Guide To Docker For Web Developers! - Usersnap
Docker containers can be a true productivity booster for your next web apps, but as a web developer it’s not that easy to understand the essence of Docker.
Не свойственно для этого канала, но обе статьи на русском. Они достаточно старые, но, во-первых, не потеряли своей актуальности, во-вторых, помогают вникнуть быстро вникнуть в суть дела, в-третьих, когда хайп вокруг Docker начинался и был в разгаре, этого канала ещё не было 🙂
Контейнеры в общем-то по-одиночке запускать скучно. Даже для простеньких проектов их необходимо обычно несколько. Поскольку аргументы у Docker достаточно муторные, даже на локальном хосте имеет смысл пользоваться docker-compose (он, кстати, описан в третьей статье)
Если же вам захочется использовать контейнеризацию в проде, без оркестратора в принципе не обойтись. Что это такое и для чего нужно, Всеволод Поляков разобрал в своём блоге
А уже в следующей статье он сравнивает известные оркестраторы по разным критериям, таким как сеть, управление дисками, деплой и проч. Очень классно получилось - почитайте!
#containers #docker #swarm #kubernetes #mesos #nomad #rancher
Контейнеры в общем-то по-одиночке запускать скучно. Даже для простеньких проектов их необходимо обычно несколько. Поскольку аргументы у Docker достаточно муторные, даже на локальном хосте имеет смысл пользоваться docker-compose (он, кстати, описан в третьей статье)
Если же вам захочется использовать контейнеризацию в проде, без оркестратора в принципе не обойтись. Что это такое и для чего нужно, Всеволод Поляков разобрал в своём блоге
А уже в следующей статье он сравнивает известные оркестраторы по разным критериям, таким как сеть, управление дисками, деплой и проч. Очень классно получилось - почитайте!
#containers #docker #swarm #kubernetes #mesos #nomad #rancher
dpvs
Рубрика кэпа: контейнеры и оркестраторы. Часть 1.
В общем, сейчас дофига разных систем оркестрации контейнеров. А зачем они вообще нужны? Зачем вообще нужны контейнеры? Контейнеры, по моему мнению, в первую очередь решают проблему сборки, доставки и запуска приложения, помогают сделать окружения запуска…
Я знаю, вы думаете: "Хватит грузить на философией. Тут технические специалисты собрались, давай что-то техническое! Давай про тулзы!"
Про тулзы будет, но "трохи папiзже", а пока делюсь презентацией про сети в контейнерах и Kubernetes с картинками
#networking #containers #kubernetes
Про тулзы будет, но "трохи папiзже", а пока делюсь презентацией про сети в контейнерах и Kubernetes с картинками
#networking #containers #kubernetes
Ian Lewis объясняет, что такое container runtime, какие они бывают и почему это словосочетание вызывает путанницу
Если тезисно:
- у самого понятия "runtime" тоже несколько определений.
- в статье опираются на то, что рантайм — это некая сущность, которая поддерживает исполнение. Пример: HotSpot Runtime в Java
- таким образом есть low level и high level рантаймы
- первые позволяют вам лишь запускать контейнеры (lxc, runc)
- вторые уже содержат какие-то API, фичи вокруг менеджмента имаджей и проч
to be continued
Часть I:
https://www.ianlewis.org/en/container-runtimes-part-1-introduction-container-r
#containers
Если тезисно:
- у самого понятия "runtime" тоже несколько определений.
- в статье опираются на то, что рантайм — это некая сущность, которая поддерживает исполнение. Пример: HotSpot Runtime в Java
- таким образом есть low level и high level рантаймы
- первые позволяют вам лишь запускать контейнеры (lxc, runc)
- вторые уже содержат какие-то API, фичи вокруг менеджмента имаджей и проч
to be continued
Часть I:
https://www.ianlewis.org/en/container-runtimes-part-1-introduction-container-r
#containers
Ian Lewis
Container Runtimes Part 1: An Introduction to Container Runtimes
One of the terms you hear a lot when dealing with containers is “container runtime”. “Container runtime” can have different meanings to different people so it’s no wonder that it’s such a confusing and vaguely understood term, even within the container community.
Google рассказали, как они тестируют содержимое контейнеров: что все команды на своих местах, файлы имеют правильные пути и пермишены, вот это всё
https://opensource.googleblog.com/2018/01/container-structure-tests-unit-tests.html
Сам фреймворк в открытом доступе на GitHub:
https://github.com/GoogleCloudPlatform/container-structure-test
#containers
https://opensource.googleblog.com/2018/01/container-structure-tests-unit-tests.html
Сам фреймворк в открытом доступе на GitHub:
https://github.com/GoogleCloudPlatform/container-structure-test
#containers
Google Open Source Blog
Container Structure Tests: Unit Tests for Docker Images
Вышла вторая часть цикла статей от Ian Lewis про рантаймы контейнеров
- построение своего рантайма на коленке
- обзор низкоуровневых решений
Первую часть можно найти тут: t.me/catops/385
#containers
- построение своего рантайма на коленке
- обзор низкоуровневых решений
Первую часть можно найти тут: t.me/catops/385
#containers
Ian Lewis
Container Runtimes Part 2: Anatomy of a Low-Level Container Runtime
This is the second in a four-part series on container runtimes. In part 1, I gave an overview of container runtimes and discussed the differences between low-level and high-level runtimes. In this post I will go into detail on low-level container runtimes.
Четвёртая и заключительная часть серии про рантаймы контейнеров от Ian Lewis.
Предыдущие части:
- Часть I
- Часть II
- Часть III
#containers #kubernetes
Предыдущие части:
- Часть I
- Часть II
- Часть III
#containers #kubernetes
Ian Lewis
Container Runtimes Part 4: Kubernetes Container Runtimes & CRI
This is the fourth and last part in a four part series on container runtimes. It’s been a while since part 1, but in that post I gave an overview of container runtimes and discussed the differences between low-level and high-level runtimes. In part 2 I went…
Утро начинается не с кофе (пора уже эту фразу превращать в рубрику)
В рантайме контейнеров runc, который стоит под ногами у Docker, containerd, cri-o, etc. найдена критическая уязвимость, позволяющая злоумышленнику подменять бинарник runc и таким образом получать root-доступ к хост-системе.
CVE-2019-5736
Патч уже выпущен, тестовый эксплойт будет доступен через неделю.
Это хорошее напоминание, почему неплохо гонять контейнеры на read-only ФС и использовать утилиты а-ля gVisor
P.S.: Для тех, кто не очень разбирается, что это за рантаймы контейнеров, но боится спросить; серия статей Ian Lewis, которая прекрасно раскрывает тему.
#containers #docker #security
В рантайме контейнеров runc, который стоит под ногами у Docker, containerd, cri-o, etc. найдена критическая уязвимость, позволяющая злоумышленнику подменять бинарник runc и таким образом получать root-доступ к хост-системе.
CVE-2019-5736
Патч уже выпущен, тестовый эксплойт будет доступен через неделю.
Это хорошее напоминание, почему неплохо гонять контейнеры на read-only ФС и использовать утилиты а-ля gVisor
P.S.: Для тех, кто не очень разбирается, что это за рантаймы контейнеров, но боится спросить; серия статей Ian Lewis, которая прекрасно раскрывает тему.
#containers #docker #security
GitHub
Release 18.06.2-ce · docker/docker-ce
Changelog
For more information on the list of deprecated flags and APIs, have a look at
https://docs.docker.com/engine/deprecated/ where you can find the target removal dates
18.06.2-ce (2019-02-11...
For more information on the list of deprecated flags and APIs, have a look at
https://docs.docker.com/engine/deprecated/ where you can find the target removal dates
18.06.2-ce (2019-02-11...
Возможно, вам не нужен Kubernetes.
Сказ о том, как Nomad хорош.
Осторожно! Если вы начнёте ощущать покалывания внизу спины, добро пожаловать в комментарии
#kubernetes #containers #nomad
Сказ о том, как Nomad хорош.
Осторожно! Если вы начнёте ощущать покалывания внизу спины, добро пожаловать в комментарии
#kubernetes #containers #nomad
endler.dev
Maybe You Don't Need Kubernetes
Kubernetes is the 800-pound gorilla of container orchestration. It powers some of the biggest deployments worldwide, but it comes with a price tag...
"Безрутовый" Docker в версии 19.03
Docker планируют добавить поддержку "безрутового" демона в экспериментальном режиме (уже доступен в ночных сборках). Безрутовый докер демон запускается от непривелигированного пользователя, но имеет ряд ограничений:
- cgroups, apparmor, overlay n/w и другие вещи, требующие привелигированного доступа не работают
- порты пробрасываются костылями
- пока что поддерживаются только образы на основе Ubuntu
#containers #docker
Docker планируют добавить поддержку "безрутового" демона в экспериментальном режиме (уже доступен в ночных сборках). Безрутовый докер демон запускается от непривелигированного пользователя, но имеет ряд ограничений:
- cgroups, apparmor, overlay n/w и другие вещи, требующие привелигированного доступа не работают
- порты пробрасываются костылями
- пока что поддерживаются только образы на основе Ubuntu
#containers #docker
Packt Hub
Docker 19.03 introduces an experimental rootless Docker mode | Packt Hub
Rootless Docker will help reduce the security footprint of the daemon and expose Docker capabilities to systems where users cannot gain root privileges
Dive - утилита для анализа сборки Docker образов.
Позволяет анализировать сборку слоёв и смотреть, что меняется в каждом из них.
Создана для оптимизации размера образов.
#containers #docker
Позволяет анализировать сборку слоёв и смотреть, что меняется в каждом из них.
Создана для оптимизации размера образов.
#containers #docker
GitHub
GitHub - wagoodman/dive: A tool for exploring each layer in a docker image
A tool for exploring each layer in a docker image. Contribute to wagoodman/dive development by creating an account on GitHub.
Time to speak about Cracking Containers without SMS and Registration
Nowadays released Cloud Container Attack Tool (CCAT ☁🐈) - offencive tool for testing security of container environments.
Now it can automatically found images with 'latest' tag in your AWS ECR, generate and push backdored image in two clicks, so you can see what can happens if some keys was leaked.
In future, RhinoSecurityLabs promise add support ECS/EKS attack options, Container Escape Features and same 'features' for Azure, GCP, Alibaba, IBM and OpenShift.
Another usefull stuff on this topic:
- Docker Bench for Security
- Kube-hunter
#security #containers
Nowadays released Cloud Container Attack Tool (CCAT ☁🐈) - offencive tool for testing security of container environments.
Now it can automatically found images with 'latest' tag in your AWS ECR, generate and push backdored image in two clicks, so you can see what can happens if some keys was leaked.
In future, RhinoSecurityLabs promise add support ECS/EKS attack options, Container Escape Features and same 'features' for Azure, GCP, Alibaba, IBM and OpenShift.
Another usefull stuff on this topic:
- Docker Bench for Security
- Kube-hunter
#security #containers
В свете последних событий с покупкой Mirantis Docker Enterprise, предлагаю вам историю в двух частях от Scott McCarty - Technical product manager в RedHat - про отношение OpenShift 4 и RHEL 8 к Docker. Рекомендую начать со второй.
- Часть I: Поддерживается ли Docker в OpenShift 4 и RHEL 8?
- Часть II: Почему Docker нет в OpenShift 4 и RHEL 8?
#docker #containers #kubernetes
- Часть I: Поддерживается ли Docker в OpenShift 4 и RHEL 8?
- Часть II: Почему Docker нет в OpenShift 4 и RHEL 8?
#docker #containers #kubernetes
Mirantis
Mirantis Acquires Docker Enterprise Platform Business | Mirantis
Industry-leading Docker Enterprise container platform complements existing Kubernetes technology from Mirantis Campbell, Calif - November 13, 2019 - | Mirantis
GitHub представили свой контейнер реджистри
GitHub Container Registry is free for public images! На время беты также бесплатный для приватных образов. Какая потом будет цена пока не говорят.
Ещё заявляют, что в роадмапе поддержка стандартов OCI, так что можно будет хранить в том числе Helm3 чарты
#containers
GitHub Container Registry is free for public images! На время беты также бесплатный для приватных образов. Какая потом будет цена пока не говорят.
Ещё заявляют, что в роадмапе поддержка стандартов OCI, так что можно будет хранить в том числе Helm3 чарты
#containers
The GitHub Blog
Introducing GitHub Container Registry
GitHub Container Registry introduces easy sharing across organizations, fine-grained permissions, and free, anonymous access for public container images
Прекрасное выступление про CPU throttling в мультипроцессорных окружениях и баг ядра c планированием ресурсов CPU
https://youtu.be/UE7QX98-kO0
#linux #containers
https://youtu.be/UE7QX98-kO0
#linux #containers
YouTube
Throttling: New Developments in Application Performance with CPU Limits - Dave Chiluk, Indeed
Join us for Kubernetes Forums Seoul, Sydney, Bengaluru and Delhi - learn more at kubecon.io
Don't miss KubeCon + CloudNativeCon 2020 events in Amsterdam March 30 - April 2, Shanghai July 28-30 and Boston November 17-20! Learn more at kubecon.io. The conference…
Don't miss KubeCon + CloudNativeCon 2020 events in Amsterdam March 30 - April 2, Shanghai July 28-30 and Boston November 17-20! Learn more at kubecon.io. The conference…
Stargz Snapshotter is a non-core containerd project which allows you to lazy load container images and speed up start up time.
It works with
You can read more about
#containers
It works with
stargz
(seekable tar.gz) image format. Also, it has a converter that optimizes images for better loading (since you will need to communicate with a remote fs) You can read more about
stargz
format in the buildkit documentation#containers
Medium
Startup Containers in Lightning Speed with Lazy Image Distribution on Containerd
Introducing containerd non-core subproject Stargz Snapshotter
From our subscribers.
10 trends of real-world container use by DataDog.
1. ~90% of Kubernetes users leverage cloud-managed services
2. Amazon ECS users are shifting to Fargate
3. The average number of pods per organization has doubled
4. Host density is 3 times higher on Kubernetes than on Amazon ECS
5. Pod auto-scaling is becoming more popular
6. Organizations are deploying more stateful workloads on containers
7. Organizations running container environments create more monitors
8. Organizations are starting to replace Docker with containerd as their preferred runtime for Kubernetes
9. OpenShift adoption is growing rapidly
10. NGINX, Redis, and Postgres are the top three container images
More details are in the report.
#trends #containers
10 trends of real-world container use by DataDog.
1. ~90% of Kubernetes users leverage cloud-managed services
2. Amazon ECS users are shifting to Fargate
3. The average number of pods per organization has doubled
4. Host density is 3 times higher on Kubernetes than on Amazon ECS
5. Pod auto-scaling is becoming more popular
6. Organizations are deploying more stateful workloads on containers
7. Organizations running container environments create more monitors
8. Organizations are starting to replace Docker with containerd as their preferred runtime for Kubernetes
9. OpenShift adoption is growing rapidly
10. NGINX, Redis, and Postgres are the top three container images
More details are in the report.
#trends #containers
Datadog
10 insights on real world container use | Datadog
Our latest report examines more than 2.4 billion containers run by tens of thousands of Datadog customers to understand the state of the container ecosystem.
Docker Desktop had already became a paid option for corporate users and not all the companies are willing to pay. Some just haven't bought the licenses yet. This is bad news for Mac user stations, which are likely a majority in the corporate world.
However, there are projects out there, which aim to solve the problem of virtual machine to run your Docker containers.
This article tells a story of migration to Lima from Docker Desktop on MacOS.
There is also a complimentary project with a funny name - Colima, which simplifies the migration even further.
#docker #containers
However, there are projects out there, which aim to solve the problem of virtual machine to run your Docker containers.
This article tells a story of migration to Lima from Docker Desktop on MacOS.
There is also a complimentary project with a funny name - Colima, which simplifies the migration even further.
#docker #containers
Naomi Aro
Replacing Docker Desktop with Lima on Mac OS
Creating a writable projects mount with Lima to run your node_modules in development properly.