快速搭建Docker私有仓库指南

Docker 私有仓库用于在本地网络中存储、管理镜像,避免依赖公共仓库,提高安全性和传输效率。以下是相关概念、搭建步骤及注意事项:

核心概念

私有仓库(Private Registry) 基于 Docker 官方的 registry 镜像搭建的本地镜像仓库,用于存储私有镜像(如公司内部开发的应用镜像),仅允许授权用户访问。

1.拉取私有仓库

bash 复制代码
[root@docker_dev docker-files]# docker pull registry

2.启动私有仓库

bash 复制代码
[root@docker_dev docker-files]# docker run -id --name=regitry -p 5000:5000 registry
00d0b73d3efbbdf3656fecec597c20f63383f788b330736f5722fd8322b6fc0d

3.访问私有仓库

http://私有仓库服务器IP:5000/v2/_catatlog

4.修改daem.json

信任自己搭建的私有仓库,将地址追加到配置的加速里面

bash 复制代码
[root@docker_dev docker-files]# vim /etc/docker/daemon.json 
[root@docker_dev docker-files]# cat /etc/docker/daemon.json 
{
  "registry-mirrors": ["https://docker.unsee.tech","https://mirror.ccs.tencentyun.com","https://docker.m.daocloud.io"],
  "insecure-registries": ["192.168.198.155:5000"]
}
#重启docker服务生效
[root@docker_dev docker-files]# systemctl restart docker

5.将镜像上传至私有仓库

镜像标签规范

  • 推送 / 拉取时必须使用完整标签(含仓库地址),否则会默认操作 Docker 官方仓库。
bash 复制代码
#标记为私有仓库的镜像
[root@docker_dev docker-files]# docker tag centos_feng:1 192.168.198.155:5000/centos_yum:1.0
#注意上一步将docker服务重启了,运行的容器会自动关闭,需要将registry这个容器重新启动
#上传镜像
[root@docker_dev docker-files]# docker push 192.168.198.155:5000/centos_yum:1.0
The push refers to repository [192.168.198.155:5000/centos_yum]
174f56854903: Pushed 
1.0: digest: sha256:e167d9e35ab2525d1b4ce91925c6e6abb9e8306766e78090cbbb5cf55f1eb504 size: 529

6.拉取私有镜像仓库的镜像

bash 复制代码
[root@docker_dev docker-files]# docker pull 192.168.198.155:5000/centos_yum:1.0
1.0: Pulling from centos_yum
Digest: sha256:e167d9e35ab2525d1b4ce91925c6e6abb9e8306766e78090cbbb5cf55f1eb504
Status: Downloaded newer image for 192.168.198.155:5000/centos_yum:1.0
192.168.198.155:5000/centos_yum:1.0
[root@docker_dev docker-files]# docker images;
REPOSITORY                        TAG       IMAGE ID       CREATED             SIZE
192.168.198.155:5000/centos_yum   1.0       09dfdbc14765   About an hour ago   204MB
相关推荐
Championship.23.249 小时前
Linux 3.0 锁机制与故障排查详解
linux·运维·服务器
风123456789~11 小时前
【Linux专栏】ls 排除某个文件
linux·运维·服务器
其实防守也摸鱼12 小时前
运维--学习阶段问题解答(1)(自测)
linux·运维·服务器·数据库·学习·自动化·命令模式
Darkwanderor14 小时前
对Linux的进程控制的研究
linux·运维·c++
小兔崽子去哪了15 小时前
Docker 删除镜像后磁盘空间没有释放?
后端·docker·容器
爱网络爱Linux17 小时前
Linux proc 目录安全加固
linux·运维·rhce·rhca·红帽认证·proc 目录安全加固
MindUp17 小时前
企业网盘权限模型解析:多层级访问控制与审计能力选型指南
java·linux·运维
Zhu75817 小时前
在Docker环境部署ApacheGuacamole,对接PG数据库
数据库·docker·容器
持力行17 小时前
D-BUS会话总线
运维·网络
kdxiaojie17 小时前
Linux 驱动研究 —— I2C (5)
linux·运维·笔记·学习