Короткий и информативный гайд о том, как создавать минималистические и безопасные Docker images
#docker
FROM scratch
при помощи multistage builds на примере Go приложения.#docker
Medium
Create the smallest and secured golang docker image based on scratch
When we are building a docker Image, the first idea is using the default official image.
Утро начинается не с кофе (пора уже эту фразу превращать в рубрику)
В рантайме контейнеров 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...
"Безрутовый" 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.
Товарищ написал тулзу GORT (GO-run-things) для запуска скриптов внутри контейнера по API запросу.
Принцип работы прост: вы говорите, какой скрипт запустить с какими параметрами и тулзовина его дёргает.
Удобно для ad-hoc задач внутри контейнера, который уже запущен.
#toolz #docker
Принцип работы прост: вы говорите, какой скрипт запустить с какими параметрами и тулзовина его дёргает.
Удобно для ad-hoc задач внутри контейнера, который уже запущен.
#toolz #docker
GitHub
GitHub - idestis/gort: Simple HTTP handler to receive remote calls to run scripts bundled in Docker containers
Simple HTTP handler to receive remote calls to run scripts bundled in Docker containers - GitHub - idestis/gort: Simple HTTP handler to receive remote calls to run scripts bundled in Docker 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
Docker is introducing a container image retention policy
TL;DR: Images not pushed or pulled more than 6 month in Free accounts will be deleted.
Policy will be enforced starting November 1, 2020 and apply to the following plans:
- Free plans will have a 6 month image retention limit
- Pro and Team plans will have unlimited image retention
#docker
TL;DR: Images not pushed or pulled more than 6 month in Free accounts will be deleted.
Policy will be enforced starting November 1, 2020 and apply to the following plans:
- Free plans will have a 6 month image retention limit
- Pro and Team plans will have unlimited image retention
#docker
Docker пытаются как-то монетизироваться. В своём блоге они объявили, что вводят рейт-лимит на pull операции из Docker hub
Многие уже успели раскритиковать это решение, как с точки зрения технической реализации, так и с точки зрения UX.
Ну что тут сказать: кешируйте публичные образы в своих хранилищах
#docker
Многие уже успели раскритиковать это решение, как с точки зрения технической реализации, так и с точки зрения UX.
Ну что тут сказать: кешируйте публичные образы в своих хранилищах
#docker
Собрание статей про CloudNative. В основном там статьи про Kubernetes, Docker и Istio, но не только.
#kubernetes #docker #isio #cncf
#kubernetes #docker #isio #cncf
Готовь сани летом, как говорится.
В Kubernetes собираются задепрекейтить поддержку Docker в kubelet в версии 1.20
#kubernetes #docker
В Kubernetes собираются задепрекейтить поддержку Docker в kubelet в версии 1.20
#kubernetes #docker
Imgflip
everythings-fine
An image tagged everythings-fine
You can use multi-line RUN commands in Dockerfiles now.
It's not like you couldn't, it's just became more human readable.
To use this feature, set Dockerfile version to labs channel. Currently this feature is only available in docker/dockerfile-upstream:master-labs image.
#docker
It's not like you couldn't, it's just became more human readable.
To use this feature, set Dockerfile version to labs channel. Currently this feature is only available in docker/dockerfile-upstream:master-labs image.
# syntax=docker/dockerfile-upstream:master-labs
# syntax = docker/dockerfile-upstream:master-labs
FROM debian
RUN <<eot bash
apt-get update
apt-get install -y vim
eot
#docker
GitHub
buildkit/frontend/dockerfile/docs/syntax.md at master · moby/buildkit
concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit - moby/buildkit
Ok. That's interesting.
Docker is updating their pricing model once again and here is the interesting part:
At Docker we remain committed to continuing to provide an easy-to-use, free experience for individual developers, open source projects, education, and small businesses. In fact, altogether these communities represent more than half of all Docker usage. Docker Personal and all its components – including Docker CLI, Docker Compose, Kubernetes, Docker Desktop, Docker Build/BuildKit, Docker Hub, Docker Official Images, and more – *remain free for these communities*.
Specifically, small businesses (fewer than 250 employees AND less than $10 million in revenue) may continue to use Docker Desktop with Docker Personal for free. The use of Docker Desktop in large businesses, however, requires a *Pro*, *Team*, or *Business* paid subscription, starting at $5 per user per month.
I'm still not 100%, but it sounds like you won't be able to use Docker Desktop on you corporate laptop starting from 31st January 2022 if your company is "big enough".
Here's a Twitter thread by Corey Quinn on this issue.
#docker
Docker is updating their pricing model once again and here is the interesting part:
At Docker we remain committed to continuing to provide an easy-to-use, free experience for individual developers, open source projects, education, and small businesses. In fact, altogether these communities represent more than half of all Docker usage. Docker Personal and all its components – including Docker CLI, Docker Compose, Kubernetes, Docker Desktop, Docker Build/BuildKit, Docker Hub, Docker Official Images, and more – *remain free for these communities*.
Specifically, small businesses (fewer than 250 employees AND less than $10 million in revenue) may continue to use Docker Desktop with Docker Personal for free. The use of Docker Desktop in large businesses, however, requires a *Pro*, *Team*, or *Business* paid subscription, starting at $5 per user per month.
I'm still not 100%, but it sounds like you won't be able to use Docker Desktop on you corporate laptop starting from 31st January 2022 if your company is "big enough".
Here's a Twitter thread by Corey Quinn on this issue.
#docker
Docker
Docker is Updating and Extending Our Product Subscriptions | Docker
Learn from Docker experts to simplify and advance your app development and management with Docker. Stay up to date on Docker events and new version
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.
A small article about how to reverse engineer Docker images.
It provides some theoretical information on how Docker images are built as well as some practical tools to reverse engineer Docker images yourself.
Probably, not something you do every day, but I can recall a few times when I had search for a Dockerfile to understand how an image works. I wish I knew these tools back then!
#docker
It provides some theoretical information on how Docker images are built as well as some practical tools to reverse engineer Docker images yourself.
Probably, not something you do every day, but I can recall a few times when I had search for a Dockerfile to understand how an image works. I wish I knew these tools back then!
#docker
Medium
Reverse Engineer Docker Images Into Dockerfiles
Reverse Engineer Docker Images by Examining the Internals of How Docker Images Store Data
A nice overview of how Docker works on non-Linux hosts as well as an explanation, why I/O operations are so slow. Plus, some hints on how to make it faster for the local development.
tl;dr. Because Docker requires Linux capabilities, thus is has to have Linux VM to run Linux-based images on MacOS and Windows. This VM shares filesystem with the host, which is slow. There’s a new implementation VirtioFS, which is faster, but still not ideal.
We briefly discussed ways of running Docker on the new M-based Macs on our previous voice chat and this article has links to some tools we mentioned there, specifically: Rancher Desktop and Colima.
Also, I recall developers at my previous job complaining about slow-ish Docker performance, but IIRC VirtioFS was not widely adopted back then.
#docker #linux
tl;dr. Because Docker requires Linux capabilities, thus is has to have Linux VM to run Linux-based images on MacOS and Windows. This VM shares filesystem with the host, which is slow. There’s a new implementation VirtioFS, which is faster, but still not ideal.
We briefly discussed ways of running Docker on the new M-based Macs on our previous voice chat and this article has links to some tools we mentioned there, specifically: Rancher Desktop and Colima.
Also, I recall developers at my previous job complaining about slow-ish Docker performance, but IIRC VirtioFS was not widely adopted back then.
#docker #linux
Paolomainardi
Docker on MacOS is slow and how to fix it
Thanks to the DALL·E 2, we finally have a very nice graphic representation of the feelings of a Docker container inside a macOS environment, I will try with this article to make this poor container safe to the coast.
TL;DR Link to heading At the time of writing…
TL;DR Link to heading At the time of writing…