如果您通过代码包将应用或任务托管到SAE,可以为其自定义运行环境,例如安装运行时依赖与扩展、下载与修改文件等。本文介绍如何在SAE控制台为应用和任务设置代码包运行环境。

前提条件

背景信息

基于环境的代码包,您可以为不同的应用与任务定制运行时配置,以减少创建或更新应用与任务时的代码包体积,提升部署效率。通过该功能,您可以实现如下效果。
  • 安装系统软件,例如crontabcurltelnet等命令。
  • 安装PHP扩展,例如Skywalking等,方便启动时加载。

通过控制台自定义代码包环境

自定义代码包环境既可以在创建应用或任务模板过程中配置,也可以在部署应用或任务模板过程中配置。登录SAE控制台后的配置路径如下。

配置路径

  • 创建应用:在创建应用页面的应用部署配置配置向导页面配置。
  • 部署应用:当实例数大于等于1时,在目标应用的基本信息页面单击部署应用后,在部署应用页面配置;当实例数等于0时,在目标应用的基本信息页面单击修改应用配置后,在修改应用配置页面配置。
  • 创建任务模板:在创建任务模板页面的部署配置配置向导页面配置。
  • 部署任务模板:在编辑任务页面的部署配置配置向导页面配置。

支持的技术栈语言

不同技术栈语言的自定义运行环境能够配置的内容不同,但配置区域相同。下图以WAR包部署的Java应用为例,在配置WAR包区域,选中自定义运行环境设置,然后在右侧区域,输入所需命令。sc_configurate_custom_runtime_for_sae_application_and_job
  • Java:支持WAR包部署JAR包部署,通过自定义运行环境设置配置。
  • PHP:支持ZIP包部署,通过自定义运行环境设置配置。
  • Python:支持ZIP包部署,通过自定义安装模块依赖配置。

设置自定义运行环境

示例一:PHP环境安装依赖

#!/bin/bash

docker-php-ext-configure gd                 \
        --with-gd                           \
        --with-webp-dir                     \
        --with-jpeg-dir                     \
        --with-png-dir                      \
        --with-zlib-dir                     \
        --with-xpm-dir                      \
        --with-freetype-dir                 \
&& docker-php-ext-install -j$(nproc) gd

示例二:Java环境安装常见命令

#!/bin/bash

# 安装程序vim
yum install -y vim

验证结果

成功部署应用或任务模板后,您可以通过以下方式,验证配置的自定义运行环境是否生效。更多信息,请参见查看Webshell

  • 方式一

    登录实例的Webshell,执行已配置的相关命令。如果执行成功,表示配置成功;如果执行失败,报未找到命令的错误,表示配置失败。

  • 方式二

    登录实例的Webshell,查看是否存在已配置的文件信息。如果存在相关内容,表示配置成功;反之亦然。

如果配置失败,建议您排查实时日志定位问题。具体操作,请参见查看实时日志

最佳实践

定期清理程序日志