Docker核心技术之仓库

简介: Docker核心技术之仓库

一、Docker 仓库简介



什么是Docker仓库


Docker仓库就是存放docker镜像并有docker pull方法下载的云环境


Docker仓库分为公有仓库和私有仓库。


公有仓库指Docker Hub(官方)等开放给用户使用、允许用户管理镜像。    


私有仓库指由用户自行搭建的存放镜像的云环境。


二、Docker 私有仓库搭建



搭建无认证私有仓库


第一步:在需要搭建仓库的服务器上安装docker。


第二步:在服务器上,从docker hub下载registry仓库     docker pull registry


第三步:在服务器上,启动仓库    


         

docker run -d -ti --restart always\             
                                        --name my-registry\             
                                        -p 8000:5000\             
                                        -v /my-registry/registry:/var/lib/registry\      
                                         registry


注意:registry内部对外开放端口是5000。默认情况下,会镜像存放于容器内的/var/lib/registry(官网Dockerfile中查看)目录下,这样如果容器被删除,则存放于容器中的镜像也会丢失。


本地利用curl 服务器IP:8000/v2/_catalog  查看当前仓库中的存放的镜像列表。(注意打开8000端口访问)


私有仓库--上传、下载镜像



第一步:利用docker tag重命名需要上传的镜像

       

docker tag IMAGE 服务器IP:端口/IMAGE_NAME


第二步:利用docker push上传刚刚重命名的镜像    


docker push 服务器IP:端口/centos


注意:     必须重命名为服务器IP:端口/IMAGE_NAME    


如果push出现了类似https的错误那么需要往配置文件/etc/docker/daemon.json里添加:”insecure-registries”:[“服务器IP:端口”]       然后重启docker。


搭建带认证的私有仓库(一)



在服务器上:  


         第一步:删除先前创建的无认证的仓库容器        


docker rm -f my-registry


         第二步:创建存放认证用户名和密码的文件:      


mkdir /my-registry/auth -p


         第三步:创建密码验证文件。注意将将USERNAME和PASSWORD替换为设置的用户名和密码        


docker run --entrypoint htpasswd registry -Bbn USERNAME PASSWORD > /my-registry/auth/htpasswd


         第四步:重新启动仓库镜像


docker run -d -p 8000:5000 --restart=always --name docker-registry \
          -v /my-registry/registry:/var/lib/registry \
          -v /my-registry/auth:/auth \
          -e "REGISTRY_AUTH=htpasswd" \
          -e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
          -e "REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd" \
          registry


带认证的私有仓库 -上传、下载镜像



在本地机器上:    


         第一步:首先登录到服务器        


docker login -u username -p password 47.94.153.230:8000


         第二步:然后执行pull或者push命令    


         第三步:操作完毕后,可以退出登录


docker logout 47.94.153.230:8000


这是如果想查看仓库中已有的镜像,那么需要进行http验证才可以。可以直接借助浏览器访问47.94.153.230:8000/v2/_catalog就可以访问了


注意这里:47.94.153.230指服务器IP


三、总结



重点掌握: 私有仓库搭建(安全)


目录
相关文章
|
15天前
|
Unix Linux Docker
CentOS停更沉寂,RHEL巨变限制源代:Docker容器化技术的兴起助力操作系统新格局
操作系统是计算机系统的核心软件,管理和控制硬件与软件资源,为用户和应用程序提供高效、安全的运行环境。Linux作为开源、跨平台的操作系统,具有高度可定制性、稳定性和安全性,广泛应用于服务器、云计算、物联网等领域。其发展得益于庞大的社区支持,多种发行版如Ubuntu、Debian、Fedora等满足不同需求。
41 4
|
2月前
|
运维 Kubernetes Docker
深入理解容器化技术:Docker与Kubernetes的协同工作
深入理解容器化技术:Docker与Kubernetes的协同工作
69 12
|
2月前
|
持续交付 开发者 Docker
探索容器化技术Docker及其在现代软件开发中的应用
探索容器化技术Docker及其在现代软件开发中的应用
|
1月前
|
开发框架 安全 开发者
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。
Docker 是一种容器化技术,支持开发者将应用及其依赖打包成容器,在不同平台运行而无需修改。本文探讨了 Docker 在多平台应用构建与部署中的作用,包括环境一致性、依赖管理、快速构建等优势,以及部署流程和注意事项,展示了 Docker 如何简化开发与部署过程,提高效率和可移植性。
67 4
|
1月前
|
负载均衡 网络协议 算法
Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式
本文探讨了Docker容器环境中服务发现与负载均衡的技术与方法,涵盖环境变量、DNS、集中式服务发现系统等方式,以及软件负载均衡器、云服务负载均衡、容器编排工具等实现手段,强调两者结合的重要性及面临挑战的应对措施。
78 3
|
2月前
|
持续交付 开发者 Docker
探索容器化技术Docker及其在现代软件开发中的应用
探索容器化技术Docker及其在现代软件开发中的应用
|
2月前
|
安全 持续交付 Docker
深入理解并实践容器化技术——Docker 深度解析
深入理解并实践容器化技术——Docker 深度解析
71 2
|
2月前
|
Kubernetes Linux 开发者
深入探索容器化技术——Docker 的实战应用
深入探索容器化技术——Docker 的实战应用
99 0
|
2月前
|
持续交付 开发者 Docker
深入理解并实践容器化技术——Docker篇
深入理解并实践容器化技术——Docker篇
49 0
|
2月前
|
存储 Cloud Native 开发者
深入探索容器化技术——Docker的实战应用
深入探索容器化技术——Docker的实战应用
42 0

热门文章

最新文章