本教程通过镜像构建服务构建Nginx开发环境的自定义镜像,并通过该镜像创建实例进行环境测试。

背景信息

镜像构建服务是阿里云提供的一站式镜像定制、构建、维护、验证、共享、分发服务。您可以使用镜像构建服务快速定制自定义镜像、快速完成镜像内应用的更新与回滚等场景。更多信息,请参见镜像构建概述

本教程中示例的资源配置说明如下所示。
  • 地域:华北2(北京)
  • 公共镜像:CentOS 8.2 64位
  • 镜像模版构建内容:Nginx开发环境
通过以上资源配置完成镜像构建,然后使用已创建的自定义镜像创建实例,测试环境是否正常。

步骤一:创建并执行镜像模版

  1. 登录ECS管理控制台
  2. 在左侧导航栏,选择部署与弹性 > 镜像构建
  3. 在顶部菜单栏处,选择地域。
  4. 镜像构建管理页面,单击创建镜像模版
    如果您第一次访问镜像构建服务,将进入镜像构建服务欢迎页,此时请您单击创建镜像模版
  5. 配置镜像模版,完成后单击创建
    本教程中,主要说明配置源镜像的示例配置。关于镜像模版的其它具体操作说明,请参见创建镜像模版
    • 基本信息:设置构建模板名称描述标签
    • 配置源镜像:单击通过Dockerfile导入模版,导入以下模版内容并单击解析
      本教程中,示例模版内容如下所示。
      FROM IMAGE:centos_8_2_x64_20G_alibase_20201120.vhd
      LABEL author="admin" date="2020-11-28" platform="centos"
      RUN yum update -y
      RUN rpm --rebuilddb && yum install -y autoconf automake make wget net-tools zlib zlib-devel make gcc openssl-devel pcre pcre-devel tar
      RUN mkdir nginx_copy
      COPY http://nginx.org/download/nginx-1.17.1.tar.gz nginx_copy
      WORKDIR nginx_copy
      USER root
      RUN tar -zxvf nginx-1.17.1.tar.gz
      ENV nginxversion nginx-1.17.1
      WORKDIR $nginxversion
      RUN ./configure --prefix=/usr/local/nginx && make && make install
      WORKDIR /usr/local/nginx
      ENTRYPOINT ["sbin/nginx","-c"]
      CMD conf/nginx.conf
      如下图所示。解析后,镜像构建模版将自动完成配置。镜像构建内容
    • 配置中转实例:根据您对构建镜像的需要,设置中转实例的规格、存储大小、公网带宽等资源。
      说明 公网带宽默认值为0,即不具备公网访问能力。当您的镜像构建内容中存在需要访问公网的命令(例如下载命令)时,您必须设置一定值的公网带宽,否则将导致镜像构建任务失败。
    • 配置镜像分发:根据您的业务需求,可以将构建的镜像分发至指定地域或共享至指定阿里云账号。
      本教程中示例配置如下所示。
      • 目标镜像名称:目标镜像名称前缀,最终生成的镜像名称会自动拼接执行任务返回的构建任务ID。本示例名称前缀设置为test-image
      • 当前地域默认分发 华北2(北京)
      • 默认分发地域:华东1(杭州)。
      • 共享UID:指定共享的阿里云账号。
      • 创建后立即执行:选择
  6. 镜像模版页签,找到已创建的镜像模版,单击模版名称列的模版ID进入镜像模版详情页面。
  7. 构建历史页签,单击执行
    构建镜像任务执行成功后,构建任务的状态会变更为图标状态状态,并且生成对应的镜像ID。
    说明 如果状态异常,您可以查看执行结果的详细信息,定位并排查问题。

步骤二:查看构建成功的镜像

  1. 镜像模版详情页面的构建历史页签,单击镜像ID进入自定义镜像的详情页。
  2. 单击共享对象查看已共享的阿里云账号。
    共享镜像
  3. 查看镜像分发的情况。
    1. 在左侧导航栏,单击实例与镜像 > 镜像
    2. 在顶部菜单栏处,选择镜像分发的地域。
      本示例中选择华东1(杭州)
    3. 自定义镜像页签的镜像名称下拉列表后,通过搜索栏搜索分发的镜像名称。
      本示例中通过目标镜像名称前缀test-image搜索,查询到已分发的镜像表示分发成功。
      说明 分发的镜像名称由自定义名称前缀_构建任务ID构成,因此您也可以通过构建任务ID进行搜索。
      镜像分发

步骤三:创建实例并测试Nginx环境

  1. 在左侧导航栏,选择部署与弹性 > 镜像构建
  2. 在顶部菜单栏处,选择镜像模版所在的地域。
    本示例中镜像构建的地域为华北2(北京)
  3. 镜像模版页签,找到已创建的镜像模版,单击模版ID进入镜像模版详情页面。
  4. 构建历史页签,单击镜像ID进入自定义镜像的详情页。
  5. 单击创建实例,然后完成实例的创建。
    请根据您的业务需求创建ECS实例,创建时请注意以下配置项,具体操作,请参见使用自定义镜像创建实例
    • 需要分配公网IPv4地址。
    • 安全组入方向规则需要开放80端口。
  6. 获取实例的公网IP。
    1. 实例创建完成后,返回实例列表页面。
    2. 找到已创建的ECS实例,在IP地址列,复制公网IP地址。
  7. 在本地环境打开浏览器,然后在地址栏输入ECS实例的公网IP进行访问。
    查看到如下图所示的页面,表示Nginx开发环境正常。Nginx