创建私有docker仓库

简介: linux创建docker仓库的方法,可以使用docker或者podman下载和上传docker镜像文件。

创建私有docker仓库


安装docker repo
yum -y install docker-registry
修改docker repo 配置
$ cat /etc/docker-distribution/registry/config.yml
version: 0.1
log:
  fields:
    service: registry
storage:
    cache:
        layerinfo: inmemory
    filesystem:
        rootdirectory: /var/lib/registry  #镜像存储位置,可以修改成自己的
http:
    addr: :5000  #监听端口为5000
启动docker
systemctl start docker-distribution
systemctl enable docker-distribution
上传docker images
docker tag mysql:5.7.22 <IP>:5000/mysql:5.7.22
docker push docker-registry:5000/mysql:5.7.22
##如果推送报错需要
$ vim /etc/docker/daemon.json 
{
"registry-mirrors": ["docker-registry:5000"],
"insecure-registries": ["docker-registry:5000"]
}

##如果出现FATA[0000] Error response from daemon: v1 ping attempt failed with error: Get https://10.121.136.139:5000/v1/_ping: local error: record overflow. If this private registry supports only HTTP or HTTPS with an unknown CA certificate, please add `--insecure-registry 10.121.136.139:5000` to the daemon's arguments. In the case of HTTPS, if you have access to the registry's CA certificate, no need for the flag; simply place the CA certificate at /etc/docker/certs.d/10.121.136.139:5000/ca.crt

$ vim /etc/default/docker
DOCKER_OPTS="$DOCKER_OPTS --insecure-registry=10.121.136.139:5000"
$ systemctl restart docker
启动docker repo
docker run -d -p 5000:5000 --restart=always -v /var/ftp/Docker/:/var/lib/registry registry
获取docker repo中的images列表
curl  http://10.121.136.139:5000/v2/_catalog
##列出images详情
curl -X GET http://10.121.136.139:5000/v2/ubuntu/tags/list
删除docker repo image
##### 方法一 #####
##delete_docker_registry_image 需要下载 wget https://raw.githubusercontent.com/burnettk/delete-docker-registry-image/master/delete_docker_registry_image.py | sudo tee /usr/local/bin/delete_docker_registry_image
export REGISTRY_DATA_DIR=/var/ftp/Docker/docker/registry/v2; delete_docker_registry_image --image ceph:1.3.1

##### 方法二 #####
# 获取hash
curl  http://10.127.6.35:5000/v2/centos7.7/manifests/ceph_rpm_ok

# 删除images
curl -X DELETE  http://10.127.6.35:5000/v2/centos7.7/manifests/sha256:ce5be5c4e5c651cf8e2b6ac8c749f37a2e73a85a00b04d87b2aa514ef963425e

###注意, 删除需要修改配置文件 /etc/docker-distribution/registry/config.yml

storage:
    delete:
        enabled: true
# 重启服务systemctl restart docker-distribution
harbor 管理iamges仓库
git clone https://github.com/goharbor/harbor.git
相关文章
|
3月前
|
Docker 容器
Docker自建仓库之Harbor高可用部署实战篇
关于如何部署Harbor高可用性的实战教程,涵盖了从单机部署到镜像仓库同步的详细步骤。
151 15
Docker自建仓库之Harbor高可用部署实战篇
|
3月前
|
存储 Kubernetes Cloud Native
部署Kubernetes客户端和Docker私有仓库的步骤
这个指南涵盖了部署Kubernetes客户端和配置Docker私有仓库的基本步骤,是基于最新的实践和工具。根据具体的需求和环境,还可能需要额外的配置和调整。
94 1
|
2月前
|
网络协议 应用服务中间件 nginx
私有的docker私有镜像站仓库harbor
私有的docker私有镜像站仓库harbor
|
3月前
|
存储 测试技术 数据安全/隐私保护
Docker自建仓库之Harbor部署实战
关于如何部署和使用Harbor作为Docker企业级私有镜像仓库的详细教程。
714 12
|
3月前
|
Docker 容器
Docker Hub镜像公共仓库使用
这篇文章介绍了如何使用Docker Hub公共仓库进行镜像的创建、上传、下载和管理。
1305 8
|
3月前
|
运维 数据安全/隐私保护 Docker
Docker自建仓库之Docker Registry部署实战
关于如何使用Docker Registry镜像搭建本地私有Docker仓库的实战教程,包括了下载镜像、创建授权目录和用户名密码、启动Registry容器、验证端口和容器、测试登录仓库、上传和下载镜像的详细步骤。
876 5
|
4月前
|
存储 Docker 容器
阿里云私有docker仓库构建海外镜像
【8月更文挑战第25天】
351 3
|
3月前
|
应用服务中间件 nginx 数据安全/隐私保护
使用Harbor搭建Docker私有仓库
Harbor是一款开源的企业级Docker仓库管理工具,分为私有与公有仓库两种类型,其中私有仓库被广泛应用于运维场景。Harbor提供图形化界面,便于直观操作,并且其核心组件均由容器构建而成,因此安装时需预先配置Docker及docker-compose。Harbor支持基于项目的用户与仓库管理,实现细粒度的权限控制;具备镜像复制、日志收集等功能,并可通过UI直接管理镜像,支持审计追踪。部署Harbor涉及配置文件调整、登录认证等步骤,并可通过客户端进行镜像的上传、拉取等操作。系统内置多种角色,包括受限访客、访客、开发者、维护人员及管理员,以满足不同场景下的使用需求。
143 0
|
4月前
|
jenkins 网络安全 持续交付
Jenkins Pipeline 流水线 - 上传文件 Publish over SSH + Docker 编译 + 上传到阿里仓库
Jenkins Pipeline 流水线 - 上传文件 Publish over SSH + Docker 编译 + 上传到阿里仓库
143 0
|
4月前
|
Java 数据安全/隐私保护 Docker
SpringBoot Docker 发布到 阿里仓库
SpringBoot Docker 发布到 阿里仓库
52 0