Lazydocker: Революция в управлении Docker! Полный гайд от установки до про-использования

Lazydocker: Революция в управлении Docker! Полный гайд от установки до про-использования

Что такое Lazydocker?

Lazydocker — это терминальная утилита с текстовым пользовательским интерфейсом (TUI) для управления Docker-контейнерами, образами, томами и сетями. Она предоставляет простой и интуитивно понятный интерфейс для выполнения повседневных операций с Docker без необходимости запоминать сложные команды.


Lazydocker demo

Рисунок 1: Анимированое демо (откроется в новом окне)


Lazydocker demo 3

Рисунок 2: Анимированое демо (откроется в новом окне)

Преимущества Lazydocker:

  • Визуальный интерфейс для всех Docker-объектов
  • Быстрый доступ к логам и статистике
  • Упрощенное выполнение сложных команд
  • Интерактивный мониторинг в реальном времени
  • Кроссплатформенность

Установка и настройка

Установка через скрипт (Linux/macOS)

# Скачать и установить lazydocker
curl https://raw.githubusercontent.com/jesseduffield/lazydocker/master/scripts/install_update_linux.sh | bash

# Или через brew (macOS и Linux)
brew install lazydocker

Установка через Go

go install github.com/jesseduffield/lazydocker@latest

Установка через Docker

# Запуск как контейнер
docker run --rm -it -v \
  /var/run/docker.sock:/var/run/docker.sock \
  -v /path/to/config:/.config/jesseduffield/lazydocker \
  lazyteam/lazydocker

Установка в Windows

# Через Chocolatey
choco install lazydocker

# Через Scoop
scoop bucket add extras
scoop install lazydocker

Проверка установки

lazydocker --version

ЧИТАТЬ ДАЛЕЕ …

Ускоряем разработку: Локальный Docker Registry Mirror для всей команды

Зачем это нужно всей команде?

На самом деле я использую локальное зеркало не только для виртуальной машины с GitLab Runner'ом, но и на всех других машинах в сети указываю это зеркало. Зачем каждый раз качать одни и те же образы, если можно иметь локальную копию?

Данная проблема хоть и не частая, но, возможно знакома каждому:

Pulling docker image python:3.12...
Elapsed time: 15 minutes 59 seconds

Казалось бы, что сложного, скачать образ при деплое? Но по каким-то странным причинам это занимает столько времени. Можно конечно искать виноватых, кто старается запретить интернет своей цензурой, но проще решить проблему радикально.

Решение: Локальный кэш для всей команды или домашней студии!

Преимущества для всей команды

🚀 В 10-100 раз быстрее загрузка образов
📉 На 90% меньше интернет-трафика
🌐 Не зависит от доступности Docker Hub
👥 Все разработчики работают быстрее
💾 Повторное использование одних и тех же образов

Что такое Docker Registry Mirror?

Это локальный кэш-прокси для Docker образов. Первый раз образ качается из интернеты, а все последующие разы — из локального кэша, доступного всем в сети.

ЧИТАТЬ ДАЛЕЕ …

Как я восстановил папку после `rm -rf app/` с помощью Docker и Git

Катастрофа с rm -rf

Работая над проектом, я случайно выполнил команду rm -rf app/ и удалил папку с исходным кодом. Паника наступила мгновенно: проект ещё не был отправлен в удалённый репозиторий, и я испугался, что потерял все последние изменения файлов. К счастью, у меня были два спасительных варианта: ранее собранный Docker-контейнер и локальные Git-коммиты. В этой статье я расскажу, как я восстановил папку app/ сначала из контейнера, а затем из Git для сверки, и поделюсь командами, которые помогли мне. Если вы попали в похожую ситуацию, это руководство для вас!

Шаг 1: Осознание проблемы

После выполнения rm -rf app/ я понял, что папка с кодом моего Telegram-бота исчезла и локальные файлы пропали. PyCharm в локальной истории показал, что папки была удалена, но к сожалению он такое откатить не может. Значит нужно вытаскивать файлы от туда, где они были до момента удаления, а это:

  • Docker-контейнер, который я недавно собирал и запускал с помощью make local-build. К счастью, я не успел выполнить очистку (make clean), так что контейнер и образ были на месте.
  • Локальный Git-репозиторий с несколькими коммитами, где папка app/ ещё существовала.

Я решил попробовать оба способа восстановления, чтобы вернуть файлы и убедиться в их целостности.

ЧИТАТЬ ДАЛЕЕ …

Docker - Заметки на полях

Docker — Заметки на полях

Docker — Заметки на полях

Какие-то вещи, при работе с той или иной технологией доходят до автоматизма. И в дополнении к этому простота и удобство создания алиасов в оболочке Z shell способствует этому. Выносиш для себя набор часто используемых вещей и потом ими пользуешься. Но вот некоторые вещи остаются в стороне и из-за их редкости использования про них забываешь.
Для этого решил завести "Заметки на полях", чтобы не искать потом, те редкие вещи, а иметь дыстрый доступ к ним.

И так начнём:

Контейнеры:

Удаление всех контейнеров

Если вдруг, в один момент вы заходите удалить все контейнеры, то не спешите выполнять что нибудь на подобии

# Это работать вообще не будет, так как у rmi нет опции --all
docker rmi --all --force

# или
docker image prune --all --force
Unix
To delete all containers including its volumes use,

docker rm -vf $(docker ps -aq)
To delete all the images,

docker rmi -f $(docker images -aq)
Remember, you should remove all the containers before removing all the images from which those containers were created.

Windows - Powershell

docker images -a -q | % { docker image rm $_ -f }
Windows - Command Line

for /F %i in ('docker images -a -q') do docker rmi -f %i

https://stackoverflow.com/questions/44785585/how-can-i-delete-all-local-docker-images