Docker ComposeЩо нового в Docker Compose 5.7
Реліз уніфікує плани виконання для фаз створення та запуску, додає нові прапорці для команд push, stats і run, а також підтримку атрибута umask.
Реліз від 2 листопада 2026 · оновлено 8 листопада 2026
Головне
- Єдиний план виконання для фаз створення та запуску контейнерів
- Новий прапорець --ignore-missing для docker compose push
- Прапорці --all-projects та --aggregate для команди compose stats
- Підтримка атрибута сервісу umask у конфігурації
- Можливість відмовитися від імені сервісу як мережевого аліасу
- Зміни в API бібліотеки для викликів Up та валідації параметрів
Коротко
Випущено Docker Compose 5.7.0. Ключовою зміною релізу є перехід команд up -d та інтерактивного up на єдиний план виконання для фаз Create та Start на базі одного снепшоту демона. Також оновлення розширює набір прапорців для команд run, push і stats, додає атрибут umask для сервісів та містить низку виправлень у роботі з хуками, мережами й механізмом watch.
Нові можливості
План виконання
- Уніфікований план для
up: створення та запуск контейнерів дляup -dта інтерактивногоupтепер виконуються як єдиний план поверх одного снепшоту демона. Аналогічний підхід уже використовувався дляscale,startта перебудов у режиміwatch. - Окремий план для
start: командаcompose startтепер будує план, орієнтований виключно на запуск.
Команди CLI
compose run: прапорець--no-recreateдозволяє повторно використовувати наявні залежності без змін.compose push: додано прапорець--ignore-missing, який пропускає образи, відсутні локально. Прапорець--ignore-push-failuresоголошено застарілим на користь--ignore-missing.compose stats: додано прапорці--all-projectsта--aggregate.- Паралельне складання: ліміт
--parallelтепер передається уbakeяк параметр--jobs.
Конфігурація та мережа
- Атрибут
umask: додано підтримку атрибута сервісуumask. - Мережеві аліаси: реалізовано можливість для сервісу відмовитися від використання власного імені як мережевого аліасу.
- Автентифікація: для отримання облікових даних реєстру Docker Hub тепер використовується сесія Docker Desktop Hub.
Зміни для користувачів Compose як бібліотеки
- Виклик
Upтепер попередньо валідує параметри за правилами CLI: методUpOptions.Validate()повертає*api.IncompatibleOptionsError(errors.Is(err, api.ErrIncompatibleOptions)), якщоStart.Waitпоєднується зіStart.Attach, або якщо detached-режим (UpбезStart.Attach) поєднується зOnExit,ExitCodeFromчиWatch. Upпрацює з переданим проєктом та ігнорує значенняStartOptions.Project.- Демон більше не опитується повторно між фазами: контейнер, що зупинився після побудови плану, не перезапускається, а видалений контейнер призводить до помилки запуску, а не пропуску. Помилка планування фази Start призводить до збою до того, як буде створено будь-який контейнер.
Upу foreground-режимі тепер надає сервісу зuse_api_socketфайл/run/secrets/docker/config.json(як іup -d) та показує вивід хуківpre_start.- Інтерактивне меню клавіатури більше не збирається бібліотекою за замовчуванням: необхідно встановити
NavigationMenu: trueта передати реалізацію черезcompose.WithNavigationMenu(...). DownOptions.Imagesтепер використовує типapi.ImagePruneMode, а некоректні значення відхиляються до початку видалення ресурсів командоюDown.- Функції
compose.ServiceHash,compose.NetworkHashтаcompose.VolumeHashбільше не експортуються через переміщення до внутрішнього пакета. - Інтерфейс
api.Composeтепер скомпонований із шести менших інтерфейсів зі збереженням попереднього набору методів. - До структури
PushOptionsдодано полеIgnoreMissing.
Виправлення та покращення
- Команди
bridgeтепер відхиляють прапорець--dry-run. - У режимі
dry-runвимкнено виконання провайдерів та моделей. - Виправлено звітність
up: скасоване або прострочене очікування необов'язкової залежності більше не позначається як пропущене. - Прикріплений (attached)
upтепер враховує прапорець-tпід час зупинки застосунку. - Перевірка умови
depends_onвupтепер виконується до першого кроку опитування (poll tick). - Команда
compose logsпередає кожен рядок перезапущеного контейнера рівно один раз. - Хуки
pre_startтепер отримують змінні зenv_fileта секціїenvironmentсервісу, а їхній вивід захоплюється через відкриття лог-стріму одразу після старту. - Процес завантаження образу в
compose runтепер залишається всередині блоку прогресу команди. - При перестворенні залежностей у
compose runзберігаються їхні анонімні томи. - Команда
compose down -vзберігає томи, які не належать поточному проєкту. - Механізм
watchтепер пропускає тригериsync+execдля шляхів, змонтованих через bind mount, розпізнає bind-шляхи, що починаються з двох крапок, та ігнорує директорії.gitна будь-якій глибині. - Вузол очікування у виконавці більше не займає слот
--parallelпід час опитування. - Сервіс із
use_api_socketотримує свій конфігураційний файл під часcompose start, а передані йому облікові дані було посилено.
Огляд підготовлено автоматично за офіційними release notes за допомогою ШІ та перевірено на відповідність джерелу. Точні формулювання дивіться в оригіналі. Як ми працюємо