Docker, 10 основных команд

  • Михаил
  • 12 мин. на прочтение
  • 107
  • 20 Jun 2022
  • 21 Nov 2022

https://hub.docker.com/

Docker — отличный инструмент для создания микросервисов, который позволяет создавать облачные приложения и системы. Чтобы выжать из него максимум через терминал, вам пригодятся 10 команд, перечисленных ниже.

  1. docker ps? — показывает список запущенных контейнеров. Некоторые из полезных флагов:
    • -a / --all — список всех контейнеров (по умолчанию показывает только запущенные);
    • -q / --quiet — перечислить только id контейнеров (полезно, когда вам нужны все контейнеры).
  2. docker pull? — ?большинство образов создаётся на основе базового образа из Docker Hub. Docker Hub содержит множество готовых образов, которые можно использовать вместо того, чтобы создавать и настраивать свой собственный. Чтобы скачать определённый образ или набор образов (репозиторий), используйте команду docker pull.
  3. docker build? —? эта команда собирает образ Docker из Dockerfile и «контекста». Контекст сборки — это набор файлов, расположенных по определённому пути или URL. Используйте флаг -t, чтобы задать имя образа. Например, команда docker build -t my_container . соберёт образ, используя текущую директорию, на что указывает точка в конце.
  4. docker run? — ?запускает контейнер, на основе указанного образа. Эту команду можно дополнять другими, например, docker run my_image -it bash запустит контейнер, а затем запустит в нём bash.
  5. docker logs ?—? эта команда используется для просмотра логов указанного контейнера. Можно использовать флаг --follow, чтобы следить за логами работающей программы: docker logs --follow my_container.
  6. docker volume ls ?— ?показывает список томов, которые являются предпочитаемым механизмом для сохранения данных, генерируемых и используемых контейнерами Docker.
  7. docker rm? —? удаляет один и более контейнеров, например, docker rm my_container.
  8. docker rmi ?—? удаляет один и более образов, например, docker rmi my_image.
  9. docker stop? —? останавливает один и более контейнеров. Команда docker stop my_container остановит один контейнер, а docker stop $(docker ps -a -q) — все запущенные. Более грубый способ — использовать docker kill my_container, который не пытается сначала аккуратно завершить процесс.
  10. Можно комбинировать эти команды. Например, для очистки всех контейнеров и образов:
    • Останавливаем все запущенные контейнеры docker kill $(docker ps -q).
    • Удаляем все остановленные контейнеры docker rm $(docker ps -a -q).
    • Удаляем все образы docker rmi $(docker images -q).