TGViewer
ServerAdmin.ru ServerAdmin.ru @srv_admin · 32.6K subscribers
Post #5241 9.77K
Для тех, кто работает с Docker контейнерами, рассказываю про современный, удобный и простой инструмент, который позволяет выполнять некоторые операции с контейнерами и репозиториями вообще без установки Docker на хост. Плюс, он есть в стандартных репозиториях популярных систем, что упрощает установку и использование в целом.

Речь пойдёт про skopeo. Ставится так:

# apt install skopeo
# dnf install skopeo
# brew install skopeo

Для установки работы не нужен root, как и не нужна установка службы самого Docker. То есть это облегчённый консольный клиент для работы с контейнерами и репозиториями.

Смотрим информацию о контейнере и о конфигурации, по аналогии с докеровской командой inspect. Сам образ при этом не скачивается:

# skopeo inspect docker://docker.io/twinproduction/gatus
# skopeo inspect --config docker://docker.io/twinproduction/gatus

# skopeo inspect docker://registry.rocket.chat/rocketchat/rocket.chat
# skopeo inspect --config docker://registry.rocket.chat/rocketchat/rocket.chat

Увидели всю основную информацию о контейнере: версии, когда последний релиз был, слои, порты, Entrypoint и т.д. На самом деле удобно даже для нечастой работы с контейнерами. Я обычно в hub иду руками смотреть последний релиз, если надо уточнить для какого-то нового контейнера. Можно skopeo себе на рабочую машину поставить и пользоваться. Правда если контейнер с большой историей, там огромная портянка тэгов тянется.

Можно образ к себе скачать в виде архива:

# skopeo copy docker://docker.io/nginx:latest --override-os linux docker-archive:/tmp/nginx/nginx-latest.tar

Из архива можно забрать какие-то файлы образа, если они нужны, что-то изменить. Не требуется запуск контейнера. Можно образ залить обратно в свой локальный репозиторий.

# skopeo copy docker-archive:/tmp/nginx/nginx-latest.tar docker://registry.local/nginx:latest

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

Skopeo удобно использовать в CI/CD для некоторых задач. Можно скопировать образ из одного репозитория в другой, например, с публичного в локальный перед запуском других задач:

# skopeo copy docker://docker.io/nginx:latest docker://registry.local/nginx:latest

Можно проверить наличие какой-то тэга перед дальнейшими задачами:

# skopeo list-tags docker://docker.io/twinproduction/gatus

Так же можно подписать образ, выполнить синхронизацию двух репозиториев с набором различных версий контейнеров, пометить образы в репозитории на удаление. Skopeo поддерживает аутентификацию в registry.

Все доступные команды описаны в man:

◽️inspect, list-tags
◽️copy, delete, sync
◽️login, logout
◽️standalone-sign, standalone-verify
◽️generate-sigstore-key, manifest-digest

Там же и некоторые пояснения к формату команд. Этого будет достаточно, чтобы начать пользоваться.

Некоторые полезные ссылки по теме на другие инструменты для Docker:
▪️Sinker для синхронизации образов
▪️Nexus - локальный репозиторий docker образов
▪️Harbor - ещё один локальный registry только для образов
▪️Диагностика работы контейнеров с помощью cdebug
▪️Линтер для Dockerfile - Hadolint
📊Сtop - top для контейнеров
🛡 Проверка образов на уязвимости с помощью Trivy
🛡 Автоматическое закрытие уязвимостей с помощью Copacetic
🛡 Проверка образов с помощью Dockle

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

———
ServerAdmin: 📱 Telegram | 🌐 Сайт | 📲 MAX

#docker #devops
  • 👍 94
More from @srv_admin
  1. Sep 23, 2026Очередная подборка статей авторов, которые согласились в ней участвовать. Кто не понимает,…
  2. Sep 23, 2026Контейнеры в одном инструменте, виртуалки — в другом, частное облако — вообще отдельная ис…
  3. Sep 23, 2026Расскажу тем, кто не знает, и напомню тем, кто забыл, как я. Не надо в Proxmox в LXC конте…
  4. Sep 22, 2026Недавно случайно заметил любопытную информацию на тему Proxmox VE и новой функциональности…
  5. Sep 22, 2026✔️ Сети для всех — сообщество для тех, кто развивается в сетевом и системном администриров…
  6. Sep 22, 2026Я ранее уже рассказывал, что приобрёл себе домой полноценную серверную платформу на базе S…
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 →