TGViewer
ServerAdmin.ru ServerAdmin.ru @srv_admin · 32.6K subscribers
Post #4091 11.6K
На днях нужно было вытащить один файл из Docker образа. Не из контейнера, а именно образа, так как не хотелось запускать контейнер. Никак не мог сообразить, как это сделать. Помню, что уже когда-то ломал над этим голову, и там почему-то нет простого решения. По крайней мере я его не знаю.

Решение такое. Образ надо скачать, создать контейнер, но не запускать его.

# docker pull nginx:latest
# docker create --name nginx nginx:latest

Теперь можно забрать нужный файл:

# docker cp nginx:/docker-entrypoint.d/30-tune-worker-processes.sh ~/

Либо выгрузить всё содержимое образа:

# docker export nginx -o ~/nginx-docker.tar.gz

Заодно расскажу про один полезный инструмент, который рекомендую сохранить тем, кто работает с Docker. Dive - небольшая утилита на Go, которая позволяет просматривать слои образов и видеть, в каком слое что добавилось. У утилиты простой и наглядный tui интерфейс.

Можно скачать бинарник dive из репозитория или запустить сразу в докере и посмотреть нужный тебе образ:

# docker run -ti --rm -v /var/run/docker.sock:/var/run/docker.sock wagoodman/dive nginx:latest

Увидите структуру файловой системы с подсветкой цветом разных слоёв. Если постоянно работаете на своей машине с образами, сделайте alias:

alias dive="docker run -ti --rm -v /var/run/docker.sock:/var/run/docker.sock wagoodman/dive"

Теперь можно просматривать образы так:

# dive nginx:latest

Удобная штука. Помимо отображения слоёв, она умеет проверять, не раздут ли размер образа из-за неправильных инструкций для сборки. Для этого можно собрать образ с помощью dive и сразу же получить результат анализа. То есть вместо docker build делаем dive build и получаем оценку. Подобную проверку можно встроить в CI систему и выполнять автоматически. В репозитории приведены примеры.

❗️Если заметка вам полезна, не забудьте 👍 и забрать в закладки.

#docker #devops
  • 👍 209
  • 👎 4
More from @srv_admin
  1. Oct 12, 2026Вот мы и вступили в новую реальность, когда стали пропадать датацентры целиком, что повлек…
  2. Oct 12, 2026💻Практический вебинар «СТРАТЕГИЯ РЕЗЕРВНОГО КОПИРОВАНИЯ» 📹 15 октября в 11:00 Мск за 90…
  3. Oct 10, 2026Когда я работал в одной небедной компании, там регулярно обновляли парк оборудования, а ст…
  4. Oct 9, 2026▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересны…
  5. Oct 9, 2026Астра Мониторинг впустил ИИ-агентов в системы мониторинга заказчика И приглашает вас увиде…
  6. Oct 9, 2026В пятницу расскажу про один сервис, который не имеет отношения к теме канала, но который м…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →