Docker私有仓库
私有私有仓库
有时候使用Docker Hub 这样的公共仓库可能不方便,用户可以创建一个本地仓库供私人使用。
docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库。下面是基于v2.x版本。
仓库也是一个镜像,直接从官方拉取安装:
docker run -d -p 5000:5000 --restart=always --name registry registry
镜像里已经存在了,并且已经开始运行了。
仓库
有时候使用Docker Hub 这样的公共仓库可能不方便,用户可以创建一个本地仓库供私人使用。
docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库。下面是基于v2.x版本。
仓库也是一个镜像,直接从官方拉取安装:
docker run -d -p 5000:5000 --restart=always --name registry registry
镜像里已经存在了,并且已经开始运行了。
这将使用官方的 registry 镜像来启动私有仓库。默认情况下,仓库会被创建在容器的 /var/lib/registry 目录下,可以通过-v参数来讲镜像文件存放在本地的指定路径。
例如
docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry registry 其实就是之前说的挂载。
推送仓库:
先用docker tag标记一个镜像,然后推送他。上面的那个本地仓库地址应该是127.0.0.1:5000。
把ubuntu:latest这个镜像标记为127.0.0.1:5000/ubuntu:latest
格式为
docker tag IMAGE[:TAG][REGISTRY_HOST[:REGISTRY_PORT]/]REPOSITORY[:TAG]
docker tag ubuntu:latest 127.0.0.1:5000/ubuntu:latest
推送 用docker push
docker push 127.0.0.1:5000/ubuntu:latest
用curl查看
curl 127.0.0.1:5000/v2/_catalog
我是在虚拟机上做的,我在我本机也可以通过虚拟机ip来访问仓库相关
拉取镜像 docker pull
docker pull 127.0.0.1:5000/ubuntu:latest
拉取之前可以先把本地的删除了
docker image rm 127.0.0.1:5000/ubuntu:latest
Ps:如果是想直接推送到类似这样的地址192.168.0.104因为docker默认不允许非https方式推送镜像,会出现这个
docker tag ubuntu:latest 192.168.0.104:5000/ubuntu:latest
docker push 192.168.0.104:5000/ubuntu:latest
这种问题的解决办法是 通过配置选项来取消这个限制或者是通过配置HTTPS访问。
我的ubuntu18.04是这么设置的
路径 /etc/docker/daemon.json (没有的话就创建这个文件)
内容:
{
"registry-mirrors": [
"https://dockerhub.azk8s.cn",
"https://reg-mirror.qiniu.com"
],
"insecure-registries": [
"192.168.0.104:5000"
]
}
因为我配置过数据源,所以上面registry-mirrors里面多出来一些东西。配玩之后我继续推送
docker push 192.168.0.104:5000/ubuntu:latest 发现还是不行,然后我重启了下服务
sudo systemctl daemon-reload
sudo systemctl restart docker
之后就推送上去了。
使用 DockerCompose 搭建一个拥有权限认证、TLS 的私有仓库,相关这里略过。现在手上没证书。
相关文章
- docker推送镜像到私有仓库
- docker容器三之docker仓库(hub、registry和harbor)
- Docker私有仓库Harbor介绍和部署记录
- Docker:慕课网--第一个docker化的java应用
- 搭建个私有docker镜像仓库
- docker 部署带有界面的registry仓库
- docker registry仓库私搭并配置证书
- Docker 之 私有仓库registry
- Docker和docker-compose使用总结
- Docker第二讲 在Linux系统安装配置docker
- 首次公开!华为顶级团队合编 300 页 Docker 进阶手册,理论实战双收
- Docker的私有仓库
- 配置阿里云Docker镜像加速仓库
- 浅析Docker容器的两种运行模式及 docker run 的 --rm 参数的作用及与 docker rm 的区别
- 浅析Docker Volume理解:docker内文件系统是如何工作的、镜像启动容器是如何工作的、为什么要使用Volume、如何使用Volume、匿名卷与实名卷的区别
- 浅析Docker Compose学习及docker-compose.yml配置文件参数介绍
- Docker问题——安装过程中问题Errors were encountered while processing: docker-ce
- docker容器中安装vi
- 夏日清风 - 基于Docker Swarm的极简Serverless实践
- 【Docker】: 在Ubuntu中安装Docker
- docker安装harbor 私有仓库以及网上教程的一些坑
- Docker运行jar包
- manjaro docker install ros2 in raspberry pi4B 使用Docker安装ROS2 (ros-humble) 并开启对Wayland的支持