--- date: "2021-07-20T00:00:00+00:00" title: "容器注册表" slug: "container" weight: 30 draft: false toc: false menu: sidebar: parent: "packages" name: "容器" weight: 30 identifier: "container" --- # 容器注册表 为您的用户或组织发布符合 [Open Container Initiative(OCI)](https://opencontainers.org/) 规范的镜像。 该容器注册表遵循 OCI 规范,并支持所有兼容的镜像类型,如 [Docker](https://www.docker.com/) 和 [Helm Charts](https://helm.sh/)。 **目录** {{< toc >}} ## 目录 要使用容器注册表,您可以使用适用于特定镜像类型的工具。 以下示例使用 `docker` 客户端。 ## 登录容器注册表 要推送镜像或者如果镜像位于私有注册表中,您需要进行身份验证: ```shell docker login gitea.example.com ``` 如果您使用的是 2FA 或 OAuth,请使用[个人访问令牌]({{< relref "doc/development/api-usage.zh-cn.md#通过-api-认证" >}})替代密码进行身份验证。 ## 镜像命名约定 镜像必须遵循以下命名约定: `{registry}/{owner}/{image}` 例如,以下是所有者为 `testuser` 的有效镜像名称示例: `gitea.example.com/testuser/myimage` `gitea.example.com/testuser/my-image` `gitea.example.com/testuser/my/image` **注意:** 该注册表仅支持大小写不敏感的标签名称。因此,`image:tag` 和 `image:Tag` 将被视为相同的镜像和标签。 ## 推送镜像 通过执行以下命令来推送镜像: ```shell docker push gitea.example.com/{owner}/{image}:{tag} ``` | 参数 | 描述 | | ------- | ------------ | | `owner` | 镜像的所有者 | | `image` | 镜像的名称 | | `tag` | 镜像的标签 | 例如: ```shell docker push gitea.example.com/testuser/myimage:latest ``` ## 拉取镜像 通过执行以下命令来拉取镜像: ```shell docker pull gitea.example.com/{owner}/{image}:{tag} ``` | Parameter | Description | | --------- | ------------ | | `owner` | 镜像的所有者 | | `image` | 镜像的名称 | | `tag` | 镜像的标签 | 例如: ```shell docker pull gitea.example.com/testuser/myimage:latest ```