docker简单私有仓库的搭建

示例: 【搭建简单的Registry仓库】

  1. 下载 Registry 镜像
    root@docker \~# docker pull registry

    #可以查看开放的端口,需要把端口暴露出来
    root@docker \~# docker history registry:latest

    root@docker \~# docker run -d -p 5000:5000 --restart=always registry
    9f389c98fbd2163fb6487a5bfd2358751eb4ecb07eb47f463ae76f12b117361c
    root@docker \~# docker ps
    CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
    9f389c98fbd2 registry "/entrypoint.sh /etc..." 14 seconds ago Up 12 seconds 0.0.0.0:5000->5000/tcp, :::5000->5000/tcp hardcore_saha
    #推送push #把当前镜像 nginx:v2 推送到 5000 端口
    root@docker \~# docker tag nginx:v2 172.25.254.5:5000/nginx.v3
    root@docker \~# docker push 172.25.254.5:5000/nginx.v3
    Using default tag: latest
    The push refers to repository 172.25.254.5:5000/nginx.v3
    Get "https://172.25.254.5:5000/v2/": http: server gave HTTP response to HTTPS client

默认用 https 的方式:得做认证

root@docker \~#
#也可以不用https,而用http的方式,必须得配置非加密端口信息。/etc/docker/daemon.json
root@docker \~# vim /etc/docker/daemon.json
root@docker \~# cat /etc/docker/daemon.json
{
"insecure-registries" : "http://172.25.254.5:5000"
}
root@docker \~# systemctl restart docker
root@docker \~# docker push 172.25.254.5:5000/nginx.v3
Using default tag: latest
The push refers to repository 172.25.254.5:5000/nginx.v3
54a2c5fcea1c: Pushed
a8df99e45168: Pushed
174f56854903: Pushed
latest: digest: sha256:2d45824da0f28c4087c7a2c009cc4dba14efc637fdd8bef91fd49a1dcbda8b8c size: 947

推上去的数据在哪?

root@docker \~# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9f389c98fbd2 registry "/entrypoint.sh /etc..." 13 minutes ago Up 4 minutes 0.0.0.0:5000->5000/tcp, :::5000->5000/tcp hardcore_saha
root@docker \~# docker inspect hardcore_saha
真机中位于:

最终数据位于容器的:

进去真机中的路径下看看,有 nginx:v3

root@docker \~# cd /var/lib/docker/volumes/fbc4139d10af9999ee19f7856fb7b5d187337af25eb9c927ef0e99eff304f0f0/_data
root@docker _data# ls
docker
root@docker _data# cd docker/
root@docker docker# cd registry/
root@docker registry# ls
v2
root@docker registry# cd v2/
root@docker v2# ls
blobs repositories
root@docker v2# cd repositories/
root@docker repositories# l
bash: l: command not found...
root@docker repositories# ls
nginx.v3

root@docker \~# curl 172.25.254.5:5000/v2/_catalog
{"repositories":"nginx.v3"}

再推一个试试:

root@docker \~# docker tag busybox:latest 172.25.254.5:5000/busybox:xixi
root@docker \~# docker push 172.25.254.5:5000/busybox:xixi
The push refers to repository 172.25.254.5:5000/busybox
d51af96cf93e: Pushed
xixi: digest: sha256:28e01ab32c9dbcbaae96cf0d5b472f22e231d9e603811857b295e61197e40a9b size: 527

相关推荐
吴声子夜歌7 分钟前
Kubernetes权威指南——深入掌握Service(一)
云原生·容器·kubernetes
此生决int10 分钟前
Linux系列(08)——进程控制
linux·运维·驱动开发
BioTender24 分钟前
Xaira 发布 X-Automate:将物理 AI 与智能体 AI 引入实验室自动化
运维·人工智能·自动化
Z21-X2 小时前
云原生运维学习笔记:容器技术的演进、底层原理与 Docker 全生命周期管理
运维·笔记·学习·云原生
Decay__10 小时前
18_MySQL 智能巡检方案 —— 巡检项清单 / 一键巡检脚本 / 健康评分
运维·数据库·sql·mysql·架构
java_logo10 小时前
Docker 部署 Liquibase:轻松搭建数据库变更管理
数据库·docker·容器·数据库管理·liquibase·轩辕镜像·数据库变更
天远API14 小时前
零信任架构实战:基于天远运营商三要素详版V即时版构建自动化消费电子大促电商平台高价值权益秒杀与优惠券防羊毛高并发实名核验网关
运维·人工智能·架构·自动化
Android系统攻城狮15 小时前
Linux FFmpeg深度解析之avcodec_default_get_encode_buffer调用流程与实战(二十八)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频
乐维_lwops16 小时前
案例解读:大型综合性科创产业园运维监控落地实践
运维·网络·人工智能·安全·it监控·国产运维智能体
番茄啊17 小时前
linux 开启xftp连接
linux·运维·服务器