
Поддерживать актуальность ваших Docker-контейнеров — важная задача для обеспечения безопасности и стабильности ваших приложений, будь то n8n, базы данных или веб-серверы. Ручное обновление контейнеров Docker может отнимать много времени, особенно когда их много. К счастью, существует эффективное решение – Watchtower. Этот инструмент позволяет настроить автоматическое обновление n8n а также других Docker-контейнеров, избавляя вас от рутины.
Если вы используете Portainer для управления своей Docker-средой, установка Watchtower через Portainer (Как установить Portainer читайте в этой статье) становится удивительно простой. В этой статье я подробно покажу, как выполнить установку Watchtower из интерфейса Portainer, настроить его для автоматического обновления n8n и всех других ваших контейнеров. Узнайте, как настроить Watchtower один раз и наслаждаться всегда актуальными сервисами.
Что нам понадобится для автоматизации обновлений Docker:
Работающий сервер (VPS) с установленным Docker.
Установленный и настроенный Portainer для управления Docker на вашем сервере VPS.
Готовы к простому автообновлению n8n? Приступим!
Шаг 1: Начинаем установку Watchtower через Portainer
Первый шаг в установке Watchtower Portainer — это переход к интерфейсу добавления нового контейнера.
Авторизуйтесь в Portainer. В левом меню выберите ваше Docker-окружение (обычно «local») и перейдите в раздел Containers.
Здесь вы увидите список всех ваших запущенных и остановленных контейнеров. Чтобы начать установку Watchtower, нажмите кнопку «Add container» в правом верхнем углу.

Откроется страница настройки нового контейнера. Здесь нужно задать основные параметры для Watchtower.

Шаг 2: Базовая конфигурация Watchtower в Portainer
Начнем с определения контейнера Watchtower.
Name: Придумайте понятное имя для вашего контейнера Watchtower. Наиболее логично назвать его watchtower.
Image: В поле «Image» введите имя образа Watchtower из Docker Hub: containrrr/watchtower:latest
Это обеспечит использование самой свежей версии Watchtower для автоматического обновления Docker.
Шаг 3: Выбор политики перезапуска «always»
Чтобы гарантировать, что Watchtower всегда будет работать и выполнять автообновление Docker, необходимо правильно настроить его политику перезапуска.
Перейдите во вкладку «Restart policy» в Advanced container settings.
Выберите политику «always». Эта политика memastikan, что контейнер Watchtower будет автоматически запускаться при старте Docker daemon (например, после перезагрузки вашего VPS) и перезапускаться в случае любых сбоев, обеспечивая непрерывную автоматизацию обновлений Docker.

Шаг 4: Настройка доступа к Docker Engine (Ключ к обновлению контейнеров Portainer!)
Watchtower должен иметь доступ к Docker Engine на вашем сервере, чтобы видеть другие контейнеры и управлять их жизненным циклом при обновлении. Это делается через монтирование файла сокета Docker.
Перейдите во вкладку «Volumes» в Advanced container settings.
Нажмите кнопку «map additional volume».
Тип монтирования: Выберите «Bind».
В поле «host» введите /var/run/docker.sock — стандартный путь к сокету Docker на Linux.
В поле «container» также введите /var/run/docker.sock.
Режим доступа: Убедитесь, что выбрана кнопка «Writable». Это режим rw (read-write), который дает Watchtower необходимые права для выполнения обновления контейнеров Portainer.


Без этого шага Watchtower не сможет выполнять автоматическое обновление Docker для ваших контейнеров.
Шаг 5: Определение расписания автообновления и опций
Настроим, как часто Watchtower будет проверять обновления и какие дополнительные действия выполнять.
Перейдите во вкладку «Commands & logging» в Advanced container settings.
Рядом с полем Command нажмите кнопку «Override».
В появившемся текстовом поле введите команду с нужными опциями. Чтобы проверять обновление контейнеров каждые 24 часа и автоматически удалять старые образы, пропишите:
—interval 86400 —cleanup
—interval 86400: Устанавливает интервал проверки в 86400 секунд (24 часа).
—cleanup: Указывает Watchtower удалять старые образы.
Важно для n8n автообновления и других контейнеров: Чтобы Watchtower мониторил все запущенные контейнеры на вашем сервере VPS (включая n8n) и выполнял автоматическое обновление Docker для каждого из них, убедитесь, что в этом поле НЕТ имен конкретных контейнеров. Команда только с опциями —interval и —cleanup без указания имен контейнеров активирует режим мониторинга всех контейнеров по умолчанию. Это как обновить Docker контейнеры автоматически для всей вашей среды.

Остальные настройки в этой секции можно оставить по умолчанию.
Шаг 6: Запуск контейнера Watchtower
Все необходимые настройки для установки Watchtower завершены. Теперь мы можем запустить его.
Прокрутите страницу создания контейнера вниз.
Нажмите кнопку «Deploy the container»

Portainer создаст и запустит контейнер Watchtower с заданными параметрами.
Шаг 7: Проверка и мониторинг автообновлений
После успешного развертывания, контейнер watchtower появится в списке со статусом healthy или running.
Чтобы убедиться, что Watchtower для n8n и других контейнеров работает правильно, кликните по имени контейнера watchtower и перейдите во вкладку «Logs».

В логах вы увидите записи о начале работы Watchtower, сканировании контейнеров (включая ваш n8n) и о любых выполненных обновлениях. Это подтверждает, что ваша автоматизация обновлений Docker настроена.

Заключение
Теперь вы знаете, как настроить Watchtower и выполнить его установку Portainer для автоматического обновления n8n и остальных Docker-контейнеров. Ваша задача по поддержанию n8n и всех ваших сервисов в актуальном состоянии значительно упростилась. Watchtower — это мощный инструмент для автоматизации обновлений Docker, который помогает сэкономить время и повысить надежность вашей инфраструктуры на VPS. Наслаждайтесь актуальными и безопасными контейнерами!
? Спасибо, что дочитали до конца! Если вам интересно узнать больше о мире технологий, подпишитесь на мой канал «Pro Ai»— я регулярно публикую материалы об автоматизации процессов, а также о том как ИИ меняет нашу жизнь.
Gingeard
Почему не k8s+helm?