在容器中使用Alibaba Cloud Linux镜像

阿里云提供了基于Alibaba Cloud Linux的官方容器(Docker)镜像,并且定期更新和维护,以包含最新的操作系统特性、功能和安全补丁。您可以根据您的实际需求选择合适的Alibaba Cloud Linux镜像版本,并在ECS实例中构建和部署容器化应用程序。本文介绍如何在Docker中下载、使用以及删除Alibaba Cloud Linux容器镜像。

基于Alibaba Cloud Linux镜像创建Docker实例

前提条件

您已在ECS实例中部署Docker环境。具体操作,请参见安装Docker并使用

操作步骤

  1. 远程连接ECS实例。

  2. 执行以下命令,启动Docker服务。

    sudo systemctl start docker
  3. 运行以下命令,下载Alibaba Cloud Linux的Docker镜像。

    sudo docker pull alibaba-cloud-linux-<image_version>-registry.<region_ID>.cr.aliyuncs.com/alinux<image_version>/alinux<image_version><:TAG>

    其中:

    • <image_version>:Alibaba Cloud Linux的版本,例如2或者3。

    • <region_ID>:Docker镜像所在的地域,例如cn-hangzhou。

    • (可选)<:TAG>:Docker镜像的版本。如果填写,表示下载指定版本的镜像。如果不填,默认下载最新版本的镜像。

    如何查看镜像所在的地域以及镜像版本信息?

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

    2. 在左侧导航栏选择制品中心

    3. 单击alinux2/alinux2或者alinux3/alinux3,查看Alibaba Cloud Linux 2和Alibaba Cloud Linux 3的Docker镜像版本信息。

      例如Alibaba Cloud Linux 3的Docker镜像信息如下,①表示Docker镜像所在的地域,②表示Docker镜像的版本信息。

      image.png

    示例命令如下:

    • 在杭州地域下载220901.1版本的Alibaba Cloud Linux 3 Docker镜像

      sudo docker pull alibaba-cloud-linux-3-registry.cn-hangzhou.cr.aliyuncs.com/alinux3/alinux3:220901.1
    • 在杭州地域下载最新版本的Alibaba Cloud Linux 2 Docker镜像

      sudo docker pull alibaba-cloud-linux-2-registry.cn-hangzhou.cr.aliyuncs.com/alinux2/alinux2
  4. 运行以下命令,查看镜像是否下载成功。

    sudo docker images

    示例结果如下,表示已成功下载220901.1版本的Alibaba Cloud Linux 3 Docker镜像和最新版本的Alibaba Cloud Linux 2 Docker镜像。

    image.png

  5. 运行以下命令,创建Docker实例并进入。

    sudo docker run -it alibaba-cloud-linux-<image_version>-registry.<region_ID>.cr.aliyuncs.com/alinux<image_version>/alinux<image_version><:TAG> /bin/bash

    其中<image_version><region_ID><:TAG>参数信息请参见步骤3

    示例命令如下:

    • 在杭州地域创建Alibaba Cloud Linux 3 Docker镜像版本是220901.1的Docker实例

      sudo docker run -it alibaba-cloud-linux-3-registry.cn-hangzhou.cr.aliyuncs.com/alinux3/alinux3:220901.1 /bin/bash
    • 在杭州地域创建最新Alibaba Cloud Linux 2 Docker镜像版本的Docker实例

      sudo docker run -it alibaba-cloud-linux-2-registry.cn-hangzhou.cr.aliyuncs.com/alinux2/alinux2 /bin/bash

    image.png

    说明
    • 进入容器后,您可以直接使用Docker实例。

    • 操作完成后,可以使用exit命令退出Docker实例。

  6. (可选)重新启动并进入Docker实例。

    在使用实例过程中,如果执行exit命令退出了实例,实例会自动停止。如果您需要继续使用,需要重新启动并进入实例。

    1. 运行以下命令,查询已创建的Docker实例ID,以便启动实例。

      sudo docker ps -a

      查询结果如下,CONTAINER ID为实例ID。

      image.png

    2. 运行以下命令,启动Docker实例。

      sudo docker start <CONTAINER ID>

      其中,<CONTAINER ID>需替换为您实际的Docker实例ID。

      启动完成后,您可以使用sudo docker ps命令查询正在运行的实例。如下示例中Alibaba Cloud Linux 3 Docker实例正在运行,表示启动完成。

      image.png

    3. 运行以下命令,进入已启动的Docker实例。

      sudo docker exec -it <CONTAINER ID> /bin/bash

      其中,<CONTAINER ID>需替换为您实际的Docker实例ID。

      如下示例表示已重新进入Alibaba Cloud Linux 3 Docker实例。

      image.png

删除Docker实例和Docker镜像

当您不再需要已部署的Docker实例和镜像时,建议删除以减少资源占用。

  1. 远程连接ECS实例。

  2. 运行以下命令,停止Docker实例。

    sudo docker stop <CONTAINER ID>

    其中,<CONTAINER ID>需替换为您实际的Docker实例ID。

    如下示例表示停止Alibaba Cloud Linux 2 Docker实例。

    image.png

  3. 运行以下命令,删除Docker实例。

    sudo docker rm <CONTAINER ID>

    其中,<CONTAINER ID>需替换为您实际的Docker实例ID。

    如下示例表示删除Alibaba Cloud Linux 2 Docker实例。

    image.png

  4. 运行以下命令,获取镜像名称。

    sudo docker images

    如下图所示,<REPOSITORY>列即表示Docker镜像名称。

    image.png

  5. 运行以下命令,删除Docker镜像。

    sudo docker rmi <REPOSITORY>

    其中,<REPOSITORY>需替换为您实际的镜像名称。

    如下示例表示删除Alibaba Cloud Linux 2的Docker镜像。

    image.png

相关文档

  • 后续您也可以根据需求使用容器编排工具(例如docker-compose)来管理和运行容器。阿里云还提供了容器镜像服务ACR,可以帮助您更方便地管理和运行容器化应用程序。