Как обновить Docker в контейнере или на хосте

Обновление Docker в зависимости от контекста может означать разные вещи: обновление самого Docker Engine на хосте или обновление контейнера. Вот инструкции для обоих случаев.


1. Обновление Docker Engine на хосте

Если вы хотите обновить сам Docker Engine (например, на сервере или локальной машине), выполните следующие шаги:

Для Ubuntu/Debian:

  1. Обновите список пакетов: bash
1
sudo apt-get update

Проверьте доступные версии Docker:

bash

1
apt-cache madison docker-ce

Это покажет список доступных версий Docker. Установите последнюю версию Docker:

bash

1
sudo apt-get install docker-ce docker-ce-cli containerd.io

Проверьте установленную версию Docker:

bash

  1. docker --version

Для других систем:

  • На macOS и Windows используйте Docker Desktop. Просто загрузите последнюю версию с официального сайта Docker и установите её.
  • Для других дистрибутивов Linux следуйте инструкциям на Docker Docs.

2. Обновление контейнера

Если вы хотите обновить приложение или образ, работающий в контейнере, выполните следующие шаги:

  1. Остановите текущий контейнер: bash
1
docker stop <container_name>

Удалите старый контейнер:

bash

1
docker rm <container_name>

Обновите образ Docker:

bash

1
docker pull <image_name>

Например:

bash

1
docker pull nginx:latest

Запустите новый контейнер с обновлённым образом:

bash

1
docker run -dp 127.0.0.1:3000:3000 <image_name>

Например:

bash

  1. docker run -dp 80:80 nginx:latest

3. Обновление Docker Compose

Если вы используете Docker Compose, убедитесь, что у вас установлена последняя версия:

  1. Проверьте текущую версию: bash
1
docker-compose --version

Обновите Docker Compose: Для Linux:

bash

1
2
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

Проверьте обновление:

bash

  1. docker-compose --version

Рекомендации

  • Регулярно обновляйте Docker Engine и образы, чтобы использовать последние функции и исправления безопасности.
  • Перед обновлением убедитесь, что ваши контейнеры и приложения совместимы с новой версией.
  • Если вы используете Docker Desktop, просто обновите его через интерфейс или загрузите последнюю версию с официального сайта.