什么是 容器注册表
Docker镜像存储
容器注册表
容器注册表 是Docker镜像和其他OCI兼容工件的集中存储,提供版本控制、访问控制和容器分发功能。
注册表类型
| 类型 | 示例 | |------|------| | 公共 | Docker Hub、GitHub Container Registry | | 云端 | AWS ECR、Google GCR、Azure ACR | | 自托管 | Harbor、Nexus、JFrog Artifactory | | GitLab | GitLab Container Registry |
主要功能
- 镜像存储 — 集中式仓库
- 版本控制 — 标签和摘要用于标识
- 访问控制 — RBAC和安全策略
- 漏洞扫描 — 与Trivy、Clair集成
- 复制 — 跨区域镜像
使用注册表
| 命令 | 描述 | |------|------| | docker login | 认证到注册表 | | docker push | 上传镜像 | | docker pull | 下载镜像 | | docker tag | 创建标签 |
最佳实践
- 使用不可变标签(不使用latest)
- 扫描镜像漏洞
- 签名镜像(Cosign、Notary)
- 设置旧镜像清理策略
- 启用垃圾回收
CI/CD集成
# GitLab CI示例
build:
script:
- docker build -t $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA .
- docker push $CI_REGISTRY_IMAGE:$CI_COMMIT_SHA