全部产品
云市场

上传本地镜像

更新时间:2019-02-26 15:26:56

如果您本地有一个 Nginx 镜像,需要提供给 Kubernetes 应用使用,则需要上传您的本地镜像。

操作需知

  • 当前,您本地的镜像需要上传到阿里云的 Docker registry,Kubernetes 应用支持公有和私有镜像类型。
  • 另外需要准备一台带有弹性公网 IP的 ECS 实例(或者该实例做过 NAT),才能把本地构建好的镜像上传到阿里云镜像仓库。

操作步骤

  1. 登录容器镜像服务控制台

  2. (可选)设置阿里云 Docker registry 登录密码。

    如果您是第一次访问,系统会提示您进行初始化设置。设置您的登录密码,并单击确定

    设置密码

  3. 创建命名空间。

    1. 在左侧导航栏中单击命名空间管理,然后在页面右上角单击创建命名空间

    2. 在创建命名空间对话框中,输入命名空间名称,单击确定

      注意:名称设置后不可修改,长度为2-30位,可填写小写英文字母、数字,可使用的分隔符包括“_”、“-”(分隔符不能在首位或末位)。

      创建命名空间

  4. 创建镜像仓库。

    1. 在左侧导航栏中,单击镜像列表,在镜像仓库列表页面右上角单击创建镜像仓库

    2. 在创建镜像仓库对话框中,设置镜像仓库参数,然后单击创建镜像仓库

      创建镜像仓库

      镜像仓库参数说明:

      • 地域:选择镜像仓库的地域,如华北2
      • 命令空间:从下拉列表中选择已有的命名空间,如mw
      • 仓库名称:输入您新建的仓库名,如nginx
      • 摘要:输入镜像仓库相关的信息。
      • 仓库类型:Kubernetes 支持公有和私有镜像类型。
      • 设置代码源:当前版本只支持通过命令行推送镜像到镜像仓库,请选择本地仓库
  5. 登录到带有弹性公网 IP 的 ECS,然后执行 Docker 登录命令,并输入密码。

    注意:阿里云不同的可用区对应不同的 registry,以北京为例,登录时必须指明 registry 域名为cn-beijing。其它可用区详见地域和可用区信息。并输入您的用户名和登录密码。

    $ sudo docker login --username=test@aliyun.com registry.cn-beijing.aliyuncs.com

    登录成功之后会显示 Login Succeeded

  6. 重命名镜像。

    • 如果您本地的镜像是通过构建生成的,构建过程中需要指定 tag 信息。

      $ sudo docker tag [ImageId] registry.cn-beijing.aliyuncs.com/mw/nginx:[镜像版本号]

    • 如果您本地的镜像是从其它仓库下载的,已有了 registry 名、命令空间、仓库名和 tag 名称,上传到阿里云 registry 之前需要执行 Docker tag 命令进行修改。

      $ sudo docker tag docker.io/nginx:1.13.5 registry.cn-beijing.aliyuncs.com/mw/nginx: [镜像版本号]

  7. 上传镜像到阿里云 Docker registry。

    $ sudo docker push registry.cn-beijing.aliyuncs.com/mw/nginx: [镜像版本号]

    如果没有报错信息,您本地的 Nginx 镜像就成功上传到阿里云 Docker registry 了。