Docker-registry
Перейти к навигации
Перейти к поиску
Репозиторий в контейнере
- установить docker
- загрузить образ docker-registry
- запустить контейнер
Репозиторий на хосте
- скачать с GitHub архив, например registry_2.8.3_linux_amd64.tar.gz
- распаковать исполняемый файл registry
- скопировать на сервер
- создать сервис и настроить файлы конфигурации
Установка
mv registry /usr/local/bin/
chmod +x /usr/local/bin/registry
# создание необходимых каталогов
mkdir -p /etc/docker/registry
mkdir -p /var/lib/registry
# создание файла конфигурации
/etc/docker/registry/config.yml
#-------------------------------------------------------------------------------
version: 0.1
log:
fields:
service: registry
storage:
cache:
blobdescriptor: inmemory
filesystem:
rootdirectory: /var/lib/registry
http:
addr: :5000
headers:
X-Content-Type-Options: [nosniff]
#-------------------------------------------------------------------------------
# создание файла сервиса
vi /etc/systemd/system/docker-registry.service
#-------------------------------------------------------------------------------
[Unit]
Description=Docker Registry
After=network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/registry serve /etc/docker/registry/config.yml
Restart=on-failure
[Install]
WantedBy=multi-user.target
#-------------------------------------------------------------------------------
# включение из запуск сервиса
systemctl daemon-reload
systemctl enable docker-registry
systemctl start docker-registry
Настройка клиентов (Insecure Registry)
Если реестр поднят на http, то на клиентах необходимо разрешить использовать этот репозиторий без шифрования
vi /etc/docker/daemon.json
#-------------------------------------------------------------------------------
{
"insecure-registries" : ["192.168.1.10:5000"]
}
#-------------------------------------------------------------------------------
systemctl restart docker
Загрузка образов в локальный реестр
На любом хосте с docker
# загрузка в images docker pull quay.io/minio/minio:latest # создание тэга # Синтаксис: docker tag [ЧТО_ЕСТЬ] [КУДА_ХОТИМ] docker tag quay.io/minio/minio:latest 192.168.1.10:5000/my-minio:latest # отправка в локальный репозиторий docker push 192.168.1.10:5000/my-minio:latest