Что такое unregistry?
unregistry — это лёгкий реестр образов контейнеров, созданный Пашей Свидерским, который хранит и предоставляет образы непосредственно из хранилища Docker-демона. Входящая команда docker pussh позволяет отправлять образы напрямую на удалённые серверы Docker по SSH, передавая только отсутствующие слои для максимальной эффективности.
- Docker Hub/GHCR: Ваш код становится публичным или вы платите за приватные репозитории
- Собственный реестр: Ещё один сервис для поддержки, защиты и оплаты
- Save/Load: Передаёт весь образ, даже если 90% уже существует на сервере
- Удалённая пересборка: Тратит время и серверные ресурсы при отладке производственных сборок
docker pussh myapp:latest user@server — это всё! Ваш образ теперь на удалённом сервере без настройки реестра, без подписки, без промежуточного хранилища, просто прямая передача отсутствующих слоёв по SSH.
⚡ Ключевые возможности unregistry
🚀 Прямая передача
Отправка образов напрямую на удалённые серверы по SSH. Без промежуточного реестра, без открытых портов — просто эффективная прямая передача.
📦 Дедупликация слоёв
Передаёт только отсутствующие слои, как rsync для образов Docker. Если 90% образа уже существует удалённо, передаётся только 10%.
🔒 Безопасность по дизайну
Использует SSH для аутентификации и транспорта. Нет открытых портов реестра, не требуется дополнительная конфигурация безопасности.
⚡ Нулевая настройка
Никакой инфраструктуры реестра для обслуживания. Работает с любым сервером с Docker и SSH-доступом.
🏗️ Готово для CI/CD
Идеально для конвейеров развёртывания. Сборка локально или в CI, отправка напрямую на производственные серверы без сложности реестра.
🌐 Мультиплатформенность
Поддержка мультиплатформенных образов с хранилищем образов containerd. Эффективное развёртывание ARM и x86 образов.
apt upgrade всегда держит вас на последней версии.
📦 Установка из deb.griffo.io
Шаг 1: Добавить репозиторий
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | sudo gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | sudo tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
sudo apt updateinstall -d -m 0755 /etc/apt/keyrings
curl -fsSL https://deb.griffo.io/EA0F721D231FDD3A0A17B9AC7808B4DD62C41256.asc | gpg --dearmor --yes -o /etc/apt/keyrings/deb.griffo.io.gpg
echo "deb [signed-by=/etc/apt/keyrings/deb.griffo.io.gpg] https://deb.griffo.io/apt $(lsb_release -sc 2>/dev/null) main" | tee /etc/apt/sources.list.d/deb.griffo.io.list > /dev/null
apt update🆓 Есть вечно бесплатное зеркало. deb-free.griffo.io раздаёт пакеты бесплатно навсегда — без аккаунта, без подписки, не более 2 месяцев позади upstream, исправления безопасности сразу. Сейчас там cliamp, Ghostty, lazydocker, Oh My Posh и Zed; Unregistry среди них нет, поэтому репозиторий выше — единственный способ установить его сегодня; попросите, и его можно добавить.
Шаг 2: Установить unregistry
# Install unregistry and docker-pussh
sudo apt install unregistry docker-pussh
# Проверить установку
docker pussh --version# Install unregistry and docker-pussh
apt install unregistry docker-pussh
# Проверить установку
docker pussh --version🎯 Примеры базового использования
Простая отправка образа:
# Build image locally
docker build -t myapp:latest .
# Push directly to remote server
docker pussh myapp:latest user@server.example.com
# That's it! Image is now available on remote serverРасширенное использование:
# Push with SSH key
docker pussh myapp:latest ubuntu@192.168.1.100 -i ~/.ssh/id_rsa
# Custom SSH port
docker pussh myapp:latest user@server:2222
# Specific platform for multi-arch images
docker pussh myapp:latest user@server --platform linux/amd64
# Use in deployment script
docker pussh myapp:$VERSION deploy@prod-server
ssh deploy@prod-server docker run -d myapp:$VERSIONИнтеграция с CI/CD:
# GitHub Actions example
- name: Build and deploy
run: |
docker build -t myapp:${{ github.sha }} .
docker pussh myapp:${{ github.sha }} deploy@staging-server🚀 Почему выбрать deb.griffo.io?
- Официальный Ubuntu: Недоступен в официальных репозиториях
- Ручной скрипт: Требует ручных обновлений и управления зависимостями
- Homebrew: Ограничен определёнными платформами
- deb.griffo.io: Последняя версия с автоматическими обновлениями
- ✅ Последние функции: Новейшие улучшения интеграции Docker и SSH
- ✅ Полный пакет: Включены как unregistry, так и docker-pussh
- ✅ Автоматические обновления: Пакеты обновляются в течение часов после выпуска
- ✅ Правильная интеграция: Корректно настроен как плагин Docker CLI
- ✅ Мультидистрибутив: Работает на Jammy и Noble
- ✅ Простое обслуживание: Стандартные команды apt для обновлений
📦 Репозиторий сборки пакетов
Пакеты Ubuntu автоматически собираются и поддерживаются в этих репозиториях GitHub:
- 📠 unregistry-debian - Latest release builds
- 📡 docker-pussh-debian - Latest release builds
🔗 Связанные пакеты
Также доступно из deb.griffo.io:
- lazydocker - Терминальный интерфейс для управления Docker
- uncloud - Развёртывание контейнеров на нескольких серверах
- fzf Fuzzy Finder - Расширенный поиск команд