CatOps
5.73K subscribers
94 photos
4 videos
19 files
2.21K links
DevOps and other issues by Yurii Rochniak (@grem1in) - SRE @ Preply && Maksym Vlasov (@MaxymVlasov) - Engineer @ Star. Opinions on our own.

We do not post ads including event announcements. Please, do not bother us with such requests!
Download Telegram
Я подумал, что неплохо было бы сегодняшний день посвятить контейнерам. А то как-то так получилось, что DevOps-DevOps, а о контейнерах ещё ничего не было - нелья так.

Чтобы ввести в курс дела (мало ли) статья о контейнерах вообще. Отличиях виртуализации от контейнеризации и почему это всем так сначала понравилось.

Дальше блог о том, как человек перенёс своё окружение разработчика из Vagrant в Docker с наглядными практическими рекомендациями.

Ну и напоследок ещё один блог с примерами для разных языков программирования
#containers #docker
Не свойственно для этого канала, но обе статьи на русском. Они достаточно старые, но, во-первых, не потеряли своей актуальности, во-вторых, помогают вникнуть быстро вникнуть в суть дела, в-третьих, когда хайп вокруг Docker начинался и был в разгаре, этого канала ещё не было 🙂

Контейнеры в общем-то по-одиночке запускать скучно. Даже для простеньких проектов их необходимо обычно несколько. Поскольку аргументы у Docker достаточно муторные, даже на локальном хосте имеет смысл пользоваться docker-compose (он, кстати, описан в третьей статье)

Если же вам захочется использовать контейнеризацию в проде, без оркестратора в принципе не обойтись. Что это такое и для чего нужно, Всеволод Поляков разобрал в своём блоге

А уже в следующей статье он сравнивает известные оркестраторы по разным критериям, таким как сеть, управление дисками, деплой и проч. Очень классно получилось - почитайте!
#containers #docker #swarm #kubernetes #mesos #nomad #rancher
Я знаю, вы думаете: "Хватит грузить на философией. Тут технические специалисты собрались, давай что-то техническое! Давай про тулзы!"

Про тулзы будет, но "трохи пап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
Google рассказали, как они тестируют содержимое контейнеров: что все команды на своих местах, файлы имеют правильные пути и пермишены, вот это всё

https://opensource.googleblog.com/2018/01/container-structure-tests-unit-tests.html

Сам фреймворк в открытом доступе на GitHub:

https://github.com/GoogleCloudPlatform/container-structure-test

#containers
Вышла вторая часть цикла статей от Ian Lewis про рантаймы контейнеров

- построение своего рантайма на коленке
- обзор низкоуровневых решений

Первую часть можно найти тут: t.me/catops/385

#containers
Утро начинается не с кофе (пора уже эту фразу превращать в рубрику)

В рантайме контейнеров runc, который стоит под ногами у Docker, containerd, cri-o, etc. найдена критическая уязвимость, позволяющая злоумышленнику подменять бинарник runc и таким образом получать root-доступ к хост-системе.

CVE-2019-5736

Патч уже выпущен, тестовый эксплойт будет доступен через неделю.

Это хорошее напоминание, почему неплохо гонять контейнеры на read-only ФС и использовать утилиты а-ля gVisor

P.S.: Для тех, кто не очень разбирается, что это за рантаймы контейнеров, но боится спросить; серия статей Ian Lewis, которая прекрасно раскрывает тему.

#containers #docker #security
"Безрутовый" Docker в версии 19.03

Docker планируют добавить поддержку "безрутового" демона в экспериментальном режиме (уже доступен в ночных сборках). Безрутовый докер демон запускается от непривелигированного пользователя, но имеет ряд ограничений:

- cgroups, apparmor, overlay n/w и другие вещи, требующие привелигированного доступа не работают
- порты пробрасываются костылями
- пока что поддерживаются только образы на основе Ubuntu

#containers #docker
Dive - утилита для анализа сборки Docker образов.

Позволяет анализировать сборку слоёв и смотреть, что меняется в каждом из них.

Создана для оптимизации размера образов.

#containers #docker
​​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
GitHub представили свой контейнер реджистри

GitHub Container Registry is free for public images! На время беты также бесплатный для приватных образов. Какая потом будет цена пока не говорят.

Ещё заявляют, что в роадмапе поддержка стандартов OCI, так что можно будет хранить в том числе Helm3 чарты

#containers
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 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
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
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
The Ultimate Guide to Using Insta Video Downloader