ceacer 2 已发布 1月9号 分享 已发布 1月9号 在工作中,有时我们需要搭建自己的Docker镜像仓库来存储镜像,如果使用Harbor的话有点太重量级了。今天给大家分享一套基于registry和docker-registry-browser的轻量级解决方案,带可视化管理,希望对大家有所帮助! 简介 registry registry是Docker官方提供的用于存储和分发Docker镜像的服务,使用它能创建私有的Docker镜像仓库,满足对镜像私有化管理的需求。 docker-registry-browser docker-registry-browser是一款基于registry的可视化管理工具,使用它可以方便地查看和管理存储在registry中的Docker镜像。 下面是使用它管理registry中镜像的效果图,页面还是挺不错的! mall 由于下面会以mall项目的镜像为例来讲解镜像仓库的使用,这里简单介绍下mall项目,mall项目是一套基于SpringBoot3 + Vue 的电商系统(Github标星60K),后端支持多模块和2024最新微服务架构,采用Docker和K8S部署。包括前台商城项目和后台管理系统,能支持完整的订单流程!涵盖商品、订单、购物车、权限、优惠券、会员、支付等功能! Boot项目:https://github.com/macrozheng/mall Cloud项目:https://github.com/macrozheng/mall-swarm 教程网站:https://www.macrozheng.com 项目演示: 安装 首先我们需要安装好registry和docker-registry-browser,这里我们使用Docker来安装。 registry 使用如下命令来下载registry的镜像; docker pull registry:2 下载完成后使用如下命令运行registry容器; docker run -p 5000:5000 --name registry2 \ --restart=always \ -e REGISTRY_STORAGE_DELETE_ENABLED="true" \ -d registry:2 docker-registry-browser 使用如下命令来下载docker-registry-browser的镜像; docker pull klausmeyer/docker-registry-browser 下载完成后使用如下命令运行docker-registry-browser容器; docker run -p 5001:8080 --name registry-browser \ -e SECRET_KEY_BASE=123456 \ -e DOCKER_REGISTRY_URL=http://192.168.3.101:5000/v2 \ -e ENABLE_DELETE_IMAGES=true \ -d klausmeyer/docker-registry-browser 运行成功后可以通过如下地址访问registry-browser的管理页面:http://192.168.3.101:5001 使用 接下来就以我的mall电商实战项目的镜像为例,来讲解下镜像仓库的使用。 首先使用docker tag命令将本地镜像标签修改为registry中的地址; docker tag mall/mall-admin:1.0-SNAPSHOT 192.168.3.101:5000/mall/mall-admin:1.0-SNAPSHOT 然后通过docker push命令将镜像推送至registry镜像仓库; docker push 192.168.3.101:5000/mall/mall-admin:1.0-SNAPSHOT 推送完毕后在docker-registry-browser就可以查看到对应的镜像了; 如果你想删除镜像的话,可以点击镜像查看详情,在最底部有删除按钮; 如果你想测试下镜像的拉取功能,可以使用如下命令; # 删除原来的本地镜像 docker rmi 192.168.3.101:5000/mall/mall-admin:1.0-SNAPSHOT docker rmi mall/mall-admin:1.0-SNAPSHOT # 从registry中拉取镜像 docker pull 192.168.3.101:5000/mall/mall-admin:1.0-SNAPSHOT # 修改镜像标签(主要删除镜像的地址前缀) docker tag 192.168.3.101:5000/mall/mall-admin:1.0-SNAPSHOT mall/mall-admin:1.0-SNAPSHOT 接下来我们使用如下命令,就可以把mall项目后台管理系统对应的API服务运行起来了; docker run -p 8080:8080 --name mall-admin \ --link mysql:db \ --link redis:redis \ -v /etc/localtime:/etc/localtime \ -v /mydata/app/admin/logs:/var/logs \ -d mall/mall-admin:1.0-SNAPSHOT 之后我们把mall项目后台管理系统的前端运行起来,就能正常对接后端API了; 接下来我们使用如下命令,就可以把mall项目前台商城系统对应的API服务运行起来了; docker run -p 8085:8085 --name mall-portal \ --link mysql:db \ --link redis:redis \ --link mongo:mongo \ --link rabbitmq:rabbit \ -v /etc/localtime:/etc/localtime \ -v /mydata/app/portal/logs:/var/logs \ -d mall/mall-portal:1.0-SNAPSHOT 之后我们把mall项目前台商城系统的前端运行起来,就能正常对接后端API了。 总结 今天主要给大家分享了下通过registry和docker-registry-browser搭建轻量级Docker镜像仓库的过程,比起重量级的Harbor还是挺简单的,感兴趣的小伙伴可以尝试下! 项目地址 https://github.com/klausmeyer/docker-registry-browser 评论链接 在其他网站上分享 更多分享选项...
推荐帖
创建账户或登录以发表评论
您需要成为会员才能发表评论
创建一个帐户
在我们的社区注册一个新账户。很简单!
注册新账户登入
已有账户?在此登录
立即登录