(十六)、把镜像推送到私有化 Docker 仓库

文章目录

    • [Docker 镜像如何区分推送远程和本地](#Docker 镜像如何区分推送远程和本地)
    • [1、拉取并启动 Docker Registry 镜像](#1、拉取并启动 Docker Registry 镜像)
    • 2、验证本地仓库容器状态
    • [3、编辑 daemon.json](#3、编辑 daemon.json)
    • [4、restart Docker](#4、restart Docker)
    • [5、为本地镜像打 tag](#5、为本地镜像打 tag)
    • [6、推送 tag 到本地镜像仓库](#6、推送 tag 到本地镜像仓库)

Docker 镜像如何区分推送远程和本地

镜像标签格式

Docker 镜像标签通常遵循以下格式:

复制代码
[registry/][namespace/]repository:tag
  • registry/(可选): 指定镜像仓库的地址。如果不指定,则默认为 Docker Hub(Docker 官方的公共仓库)。
  • namespace/(可选): 通常用于组织或用户的命名空间。
  • repository: 镜像仓库的名称。
  • tag: 镜像的标签,通常用于标识镜像的版本(如 latest、v1.0 等)。

当你使用 localhost:5001 作为镜像标签的一部分时,Docker 客户端会知道你要推送到本地的 Docker Registry。

1、拉取并启动 Docker Registry 镜像

本地 5001 映射 容器 5000 端口

复制代码
 docker run -d -p 5001:5000 --name registry registry:2

2、验证本地仓库容器状态

复制代码
curl http://localhost:5001/v2/_catalog

返回

复制代码
{"repositories":[]}

3、编辑 daemon.json

复制代码
 vi~/.docker/daemon.json

添加内容

复制代码
{
  "insecure-registries": ["localhost:5000"]
}

4、restart Docker

之后记得启动

复制代码
 docker run -d -p 5001:5000 --name registry registry:2

5、为本地镜像打 tag

版本号 0.0.1

前缀 localhost:5001

复制代码
 docker tag image_name:0.0.1 localhost:5001/image_name:0.0.1

6、推送 tag 到本地镜像仓库

通过指定 ip和端口,可以把tag推送到本地仓库

复制代码
 docker push localhost:5001/tag_name
相关推荐
九皇叔叔6 小时前
Kubernetes 核心概念:集群架构、核心组件与资源对象
docker·容器·kubernetes·k8s
rustfs6 小时前
MinIO 国产开源平替正式 GA
分布式·docker·云原生·rust
wdfk_prog11 小时前
ROS教程07:从 ros::start() 顺着源码读懂 Master、XML-RPC 与 Topic 注册发现
运维·缓存·docker·容器·ros
mengge.cloud11 小时前
0917Docker 小白实验教程(理论+实操)
linux·服务器·网络·docker
wdfk_prog12 小时前
用 Git Submodule + Sparse Checkout 管理 RT-Thread:内核、BSP、第三方库与业务代码分层实践
运维·缓存·docker·容器·ros
努力努力再努力wz12 小时前
【Docker入门系列】镜像为什么能复用?一文吃透 Docker Image、Registry、运行时架构与常用命令
缓存·docker·容器
java_logo16 小时前
Docker 部署填鸭表单完整教程:搭建私有化问卷与表单收集平台
docker·表单·问卷·tduck·轩辕镜像·填鸭表单·tduck platform
玉&心16 小时前
K8s HPA自动扩缩容
docker·云原生·容器·hpa·kubernates
小小ken16 小时前
docker容器(数据)备份及恢复:使用docker-volume-backup项目
docker·容器
wdfk_prog16 小时前
ROS教程06:ROS1 Node 启动与停止流程
运维·缓存·docker·容器·ros