Перейти к содержимому

Containers

Container подходит для прямого управления одной средой выполнения Docker. Gateway хранит конфигурацию и связи доступа, а выбранный Docker-демон запускает и контролирует фактический процесс. Используйте Container, если приложению не нужны сине-зелёные слоты релиза или владение многосервисным проектом.

Выбирайте Container для одного сервиса, перезапуск, обновление и восстановление которого можно выполнять как операции над одной средой выполнения. Эта модель подходит для внутренних инструментов, агентов, сервисов без состояния и рабочих нагрузок с простой связью с постоянным томом. Владелец приложения по-прежнему должен определить, безопасна ли замена процесса и нужны ли данным резервная копия или окно обслуживания.

Выбирайте Deployment, если релиз нужно подготовить и проверить до переключения трафика, сохранив кандидата для отката. Выбирайте Compose Project, если несколько сервисов, сетей, переменных и томов должны меняться в одной ревизии. Container намеренно остаётся прямой моделью: Gateway не придумывает за приложение стратегию релизов.

Успех означает больше, чем состояние running. Ожидаемая проверка состояния должна проходить, приложение должно принимать соединения на выбранном порту, Route или приватное подключение — работать, а постоянные данные — оставаться подключёнными после пересоздания. Определите эти проверки до первого обновления рабочей среды.

Вам нужны доступ к целевой ноде Docker и право создавать или изменять Container. Убедитесь, что образ доступен в разрешённом реестре, на ноде достаточно ресурсов, а запрошенная среда выполнения поддерживается. До выбора имени проверьте порты, Routes, привязки баз данных, управляемые тома и секреты: эти связи могут повлиять на последующее переименование, миграцию или удаление.

Новые привязки каталогов хоста (bind mounts) отклоняются. Для новых постоянных данных используйте локальные тома под управлением Gateway. Устаревшие привязки могут сохраняться при обычном обновлении, но после удаления их нельзя снова добавить через Gateway.

Среда выполнения Default доступна на поддерживаемых нодах Docker. Защищённая среда выполнения gVisor требует подтверждённой работоспособной возможности и несовместима с GPU, devices, привязками каталогов хоста, миграцией и экспортом архива.

  1. Выберите ноду Docker и образ; для рабочей среды по возможности используйте неизменяемый дайджест.
  2. Задайте command, entrypoint, переменные среды, зашифрованные секреты, labels, порты, политику перезапуска, ограничения ресурсов, проверки состояния и управляемые тома.
  3. Проверьте итоговую конфигурацию и создайте Container.
  4. Следите за Task создания, пока демон не сообщит состояние среды выполнения.
  5. До направления трафика проверьте состояние, журналы и каждый Route или приватное подключение к базе данных.

Используйте Recreate, если изменение конфигурации требует заменить процесс. Gateway сохраняет стабильную идентичность ресурса и заново создаёт требуемую среду выполнения. Используйте Duplicate, если нужен отдельный ресурс с независимыми правами доступа и историей жизненного цикла. Используйте Rename только после проверки зависимых Routes, привязок и интеграций.

Страница сведений служит эксплуатационной записью. Сравните желаемое и наблюдаемое состояния, результат проверки, идентичность образа, последние Tasks и журналы. Используйте Console и доступ к файлам только в рамках выданных областей и не превращайте интерактивную Console в обычный способ развёртывания.

После перезапуска или повторного подключения демона Gateway должен согласовать сохранённое желаемое состояние. Если Container запущен, но не обслуживает трафик, проверяйте сигнал по порядку: результат проверки состояния на странице Container, порт приёма соединений, цель Route, переменные среды и журнал приложения. Исправьте найденный уровень и выполните поддерживаемое действие Gateway.

Перед повторной попыткой устраните причину: ошибку загрузки образа, недоступные учётные данные реестра, конфликт портов, недопустимую точку монтирования, неподдерживаемую возможность среды выполнения или нехватку ресурсов ноды. История Task показывает этап остановки; повтор без изменения предварительного условия обычно завершается той же ошибкой.

Перед удалением проверьте Routes, привязки баз данных, разрешения, тома, настройки источника и экспортированные данные. Удаление Container снимает разрешения ресурса, поэтому новый Container с тем же именем не наследует доступ. Удаление тома — отдельное разрушительное действие: сохраните или скопируйте постоянные данные до удаления любого из ресурсов.

Обзор Container со сведениями о среде выполнения и телеметрией Secure Link

Операторские детали: пересоздание и восстановление

Заголовок раздела «Операторские детали: пересоздание и восстановление»

Изменение образа, command, переменных среды, точек монтирования, среды выполнения, портов, ограничений или поведения перезапуска может потребовать пересоздания. При пересоздании Docker заменяет среду выполнения, а стабильная идентичность Container и поддерживаемые связи в Gateway сохраняются. Текущие сеансы процесса прерываются, поэтому запланируйте окно работ или используйте Deployment, если перерыв недопустим.

Перед пересозданием запишите текущий дайджест образа, результат проверки состояния, подключённые тома, состояние Route и привязок и требования приложения к отводу трафика. После завершения Task сравните новую среду выполнения с сохранённым желаемым состоянием и проверьте реальный клиентский путь. Если приложение не запустилось, верните прежнюю заведомо исправную конфигурацию или образ и снова выполните Recreate. Не изменяйте неисправный объект Docker вне Gateway.

Если нода Docker отключилась во время операции, дождитесь нового инвентаря после подключения и только затем повторяйте действие. Хост мог завершить операцию, но не успеть подтвердить её. Если Container отсутствует, а его желаемое состояние сохранено, используйте поддерживаемое согласование или Recreate. Удаление и повторное создание записи Gateway меняет владение и права и не должно быть первым способом восстановления.

Console и доступ к файлам предназначены для инспекции и работы с инцидентами, а не для замены воспроизводимой конфигурации. Изменения только внутри работающего Container могут исчезнуть при следующем пересоздании; перенесите их в образ, управляемую конфигурацию или постоянный том.