Docker 仓库管理
2025-09-29 10:07
Docker
0
0
0
0
标题录入
封面图
Docker 仓库(Repository)是用于存储和管理 Docker 镜像的中心化服务。Docker 仓库可以分为**公共仓库**和**私有仓库**,常见的包括: --- ## 📌 一、Docker 仓库类型 ### 1. **公共仓库(Public Registry)** - **Docker Hub**:最常用的官方仓库,提供大量官方镜像和用户镜像。 - 公共仓库中的镜像默认是公开可拉取的,但也可以设置为私有。 ### 2. **私有仓库(Private Registry)** - 自建的仓库,用于企业内部使用,保证镜像的安全性。 - 常见的私有仓库实现: - **Docker Registry**(官方开源) - **Harbor**(企业级镜像仓库,支持权限管理、镜像扫描等) - **AWS ECR**(Amazon Elastic Container Registry) - **Google GCR**(Google Container Registry) - **Azure ACR**(Azure Container Registry) --- ## 🧰 二、常用命令 ### 1. 登录到仓库 ```bash docker login [registry-url] ``` 例如: ```bash docker login docker.io ``` ### 2. 拉取镜像 ```bash docker pull [repository-name]:[tag] ``` 例如: ```bash docker pull nginx:latest docker pull my-registry.com/my-app:1.0 ``` ### 3. 推送镜像 ```bash docker push [repository-name]:[tag] ``` 例如: ```bash docker push my-registry.com/my-app:1.0 ``` ### 4. 查看本地镜像 ```bash docker images ``` ### 5. 查看远程仓库中的镜像 需要使用 `curl` 或 `docker search`(仅限 Docker Hub): ```bash docker search nginx ``` --- ## 🛠 三、搭建私有仓库 ### 使用 Docker 官方 Registry #### 启动一个私有仓库 ```bash docker run -d -p 5000:5000 --name my-registry registry:2 ``` #### 浏览器访问 http://localhost:5000/v2/_catalog #### 推送镜像到私有仓库 ```bash docker tag nginx:latest localhost:5000/nginx:latest docker push localhost:5000/nginx:latest ``` > 注意:如果使用自签名证书,需要配置 Docker 客户端信任该仓库。 --- ## 🔒 四、安全与权限管理 ### 1. **认证与授权** - Docker Hub 支持账户登录。 - 私有仓库如 Harbor 可以设置用户角色(管理员、开发者、访客等)。 ### 2. **TLS 证书** - 推荐使用 HTTPS 加密通信。 - 可以使用自签名证书或从 CA 获取证书。 ### 3. **镜像扫描** - Harbor 提供漏洞扫描功能。 - 可集成 CI/CD 工具进行镜像安全检查。 --- ## 🧩 五、常用工具推荐 | 工具 | 功能 | |------|------| | **Docker Hub** | 官方公共仓库,适合个人和小型项目 | | **Harbor** | 企业级私有仓库,支持权限、扫描、镜像复制等 | | **AWS ECR / GCR / ACR** | 云服务商提供的托管仓库,适合云原生环境 | | **Skopeo** | 镜像搬运工具,支持跨仓库迁移 | | **Notary / Cosign** | 镜像签名验证,提升安全性 | --- ## ✅ 六、最佳实践建议 1. **使用标签管理版本**:如 `v1.0.0`、`latest`。 2. **避免使用 `latest` 标签**:防止意外更新导致问题。 3. **定期清理无用镜像**:减少存储占用。 4. **备份重要镜像**:尤其是生产环境的镜像。 5. **使用私有仓库保护敏感数据**:避免将关键应用镜像暴露在公网上。 --- ## 📘 七、参考资料 - [Docker Hub 官网](https://hub.docker.com/) - [Docker Registry 文档](https://docs.docker.com/registry/) - [Harbor 官网](https://goharbor.io/) - [Docker CLI 文档](https://docs.docker.com/engine/reference/commandline/docker/) --- 如果你有具体的场景(比如搭建私有仓库、管理镜像、权限控制等),我可以提供更详细的步骤或配置示例!
上一篇:
Docker配置守护程序
标题录入,一次不能超过6条
冥想是什么?怎么冥想?
T:0.010576s,M:125.44 KB
返回顶部
留言
留言
评论