Мои образы докеров создаются на CI-сервере Jenkins и помещаются в наш личный реестр Docker. Моя цель состоит в том, чтобы обеспечить среду с docker-compose, которая всегда запускает исходное состояние образов.
В настоящее время я использую docker-compose 1.3.2, а также 1.4.0 на разных машинах, но ранее мы также использовали более старые версии.
Я всегда использовал docker-compose pull && docker-compose up -d
команды, чтобы получить свежие изображения из реестра и запустить их. Я полагаю, что мое предпочтительное поведение работало как ожидалось до определенного момента времени, но с тех пор docker-compose up
начал перезапускать ранее остановленные контейнеры вместо того, чтобы каждый раз запускать изначально созданные образы.
Есть ли способ избавиться от этого поведения? Может ли это быть способом, который подключен в файле конфигурации docker-compose.yml, чтобы он не зависел от того, чтобы «не забывать» что-то в командной строке при каждом вызове?
пс. Помимо поиска пути к достижению моей цели, я также хотел бы узнать немного больше о предыстории этого поведения. Я думаю, что основная идея Docker заключается в создании неизменной инфраструктуры. Текущее поведение docker-compose, похоже, просто противоречит этому подходу ... или я здесь упускаю некоторые моменты?