Этот проект направлен на предоставление простого и полного пользовательского интерфейса для вашего private docker registry
.
Клонируем репозиторий
git clone https://github.com/Joxit/docker-registry-ui.git
Я использовал Docker Registry Static
.
Переходим в /app/docker-registry-ui/examples/ui-as-proxy
Правим конфиг, мой конфиг будет выглядить вот так:
version: '2.0'
services:
registry:
image: registry:2.7
volumes:
- ./registry-data:/var/lib/registry
environment:
# Разрешить удалять в регистре
- REGISTRY_STORAGE_DELETE_ENABLED=true
networks:
- registry-ui-net
ui:
image: joxit/docker-registry-ui:latest
ports:
- 81:80
environment:
- REGISTRY_TITLE=WISET Private Docker Registry
- NGINX_PROXY_PASS_URL=http://registry:5000
- SINGLE_REGISTRY=true
# Разрешить удалять из вебки
- DELETE_IMAGES=true
depends_on:
- registry
networks:
- registry-ui-net
networks:
registry-ui-net:
Запускаем командой
docker-compose -f simple.yml up -d
Проверяем что все завелось командой docker-compose -f simple.yml ps
вывод будет:
Name Command State Ports
--------------------------------------------------------------------------------------------------
ui-as-proxy_registry_1 /entrypoint.sh /etc/docker ... Up 5000/tcp
ui-as-proxy_ui_1 /docker-entrypoint.sh ngin ... Up 0.0.0.0:81->80/tcp,:::81->80/tcp
После чего нужно запустить команду которая удалит образ из registry
sudo docker exec ui-as-proxy_registry_1 registry garbage-collect /etc/docker/registry/config.yml
По умолчанию registr работает по HTTPS
Чтобы можно было push-ить образы по HTTP
нужно создать или изменить файл /etc/docker/daemon.json
добавив туда:
{ "insecure-registries":["you.domain.com:81"] }
После чего перезапустить сервис docker
service docker restart
Ссылка на репозиторий Docker Registry UI тут