OpenWrt使用registry

我的openwrt设备的存储空间比较大,加上本人没有nas的需求,于是就拿openwrt当做docker镜像仓库使用。registry没有web页面不是特别友好,在dockerhub闲逛的时候发现了frontend这个镜像可以为registry提供一个比较友好的web页面就顺手部署一下,偶尔偷懒(懒得调registry接口。。。)看下自己上传了什么镜像还是OK的。。。

1、安装docker-compose

安装命令

opkg update
opkg install libffi
opkg install python3   --force-overwrite
opkg install python3-pip

如果使用pip命令出现了报错,可以更新一下pip

pip install --upgrade pip
pip install --upgrade setuptools
pip install docker-compose==1.23.2

安装过程中报什么错就独立安装什么包

2、安装registry web

docker-compose.yml如下所示

version: '3.1'
services:
  registry:
    image: registry
    restart: always
    container_name: registry
    ports:
      - 5000:5000
    volumes:
      - /data/docker/registry:/var/lib/registry     # 路径要改成你的实际路径

  frontend:
    image: konradkleine/docker-registry-frontend:v2
    restart: always
    ports:
      - 8080:80                                     # frontend的web端口
    volumes:
      - ./certs/frontend.crt:/etc/apache2/server.crt:ro
      - ./certs/frontend.key:/etc/apache2/server.key:ro
    environment:
      - ENV_DOCKER_REGISTRY_HOST=172.16.149.1      # ip改为你实际的ip
      - ENV_DOCKER_REGISTRY_PORT=5000              # 和registry的端口要对应

3、镜像相关操作

(1)、上传镜像

docker push xxxxxx

(2)、删除镜像

查看相关镜像
命令:
curl -X GET http://172.16.149.1:5000/v2/_catalog

调用这个接口会查询出所有镜像的名字

{
    "repositories": [
        "bosybox",
        "nginx"
    ]
}

(3)安装删除镜像工具

使用delete-docker-registry-image进行删除镜像
安装步骤如下

# wget https://raw.githubusercontent.com/burnettk/delete-docker-registry-image/master/delete_docker_registry_image.py 
# cat delete_docker_registry_image.py | tee /usr/bin/delete_docker_registry_image >/dev/null
# chmod +x /usr/bin/delete_docker_registry_image

配置环境变量

# docker registry私有仓库存储位置查看
docker inspect registry | grep Source
vi /etc/profile
# 增加以下配置
export REGISTRY_DATA_DIR=/opt/env/registry/docker/registry/v2
# source命令 使配置文件生效
source /etc/profile

/opt/env/registry/docker/registry/v2改成你本地docker镜像仓库实际上指向的位置。

(4)、模拟删除

delete_docker_registry_image --image bosybox --dry-run

命令后面增加--dry-run表示模拟删除,只列出会删除的文件。
testrepo/awesomeimage为你镜像的名字。对应我们的就是第一步查出来的bosyboxnginx
删除
delete_docker_registry_image --image bosybox

删除工具github链接:https://github.com/burnettk/delete-docker-registry-image

|| 版权声明
作者:废权
链接:https://blog.yjscloud.com/archives/127
声明:如无特别声明本文即为原创文章仅代表个人观点,版权归《废权的博客》所有,欢迎转载,转载请保留原文链接。
THE END
分享
二维码
OpenWrt使用registry
我的openwrt设备的存储空间比较大,加上本人没有nas的需求,于是就拿openwrt当做docker镜像仓库使用。registry没有web页面不是特别友好,在dockerhub闲逛的时……
<<上一篇
下一篇>>
文章目录
关闭
目 录