本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
您可以使用环境变量来灵活调整您部署的应用,而无需修改代码。环境变量作为应用版本配置的一部分,以字符串键值对的方式存储,并且每个应用版本都有其独立的环境变量。本文介绍环境变量的基本信息、控制台部署方式以及示例代码。
使用限制
字符集规则
Key的字符集必须以大小写字母开头,只能包含大小写字母和数字。
大小限制
所有环境变量的大小总和不能超过4KB。
系统预留环境变量
为避免系统混淆,设置环境变量时,请勿使用系统预留的环境变量accessKeyID、accessKeySecret、securityToken和topic。
重要系统环境变量accessKeyID、accessKeySecret和securityToken为临时密钥敏感信息,请勿向第三方透露。
使用场景
跨平台或跨服务共享代码
同一份代码在测试环境和生产环境运行时的配置可能存在差异。例如,您可以通过环境变量的方式选择使用不同的OSS Bucket、数据库或者表格,而无需修改代码。代码在不同平台部署时也无需更改。
配置密钥
您可以通过环境变量设置连接数据库的用户名和密码、您的阿里云AccessKey或其他安全敏感性的认证信息。
配置系统变量
在配置PATH和HOME等目录时,您可以更灵活地使用系统库。
操作步骤
在创建Web应用时设置环境变量
登录SAE控制台。
在左侧导航栏,选择
,在顶部菜单栏选择地域。在应用列表页面,单击创建应用。
在应用基本信息页面,按照页面提示完成参数配置,然后单击下一步:高级设置。
在高级设置页面的环境变量区域,设置以下参数。
使用单表编辑(默认):
单击+ 添加变量,输入键值对。
变量:自定义。如
BUCKET_NAME
、TABLE_NAME
。值:自定义。如
MY_BUCKET
、MY_TABLE
。
示例如下。
使用 JSON 格式编辑:
单击使用JSON格式编辑,输入JSON格式的键值对。格式如下。
{ "key": "value"}
示例如下。
单击创建应用。
在部署新版本时设置环境变量
部署新版本后,该应用将会被重启。为避免业务中断等不可预知的错误,请在业务低峰期执行部署操作。
登录SAE控制台。
在左侧导航栏,选择
,在顶部菜单栏选择地域。在应用列表页面,单击目标应用名称。
在左侧导航栏,单击基础信息页面,单击新建版本。
可选:在左侧导航栏,单击版本列表,然后单击新建版本。
在新建版本面板的环境变量区域,选择使用表单编辑或使用JSON格式编辑,然后单击确定。
使用单表编辑(默认):
单击+ 添加变量,输入键值对。
变量:自定义。如
BUCKET_NAME
、TABLE_NAME
。值:自定义。如
MY_BUCKET
、MY_TABLE
。
示例如下。
使用 JSON 格式编辑:
单击使用JSON格式编辑,输入JSON格式的键值对。格式如下。
{ "key": "value"}
示例如下。
版本创建成功后,您可以在版本列表页面查看新建的版本。
环境变量示例
某应用集成了MySQL,在应用使用时需为其配置MySQL运行所需的环境变量。
MYSQL_ROOT_PASSWORD
:用于设置MySQL的Root密码。如果不设置该项,则MySQL容器无法正常启动。MYSQL_USER
和MYSQL_PASSWORD
:用于添加除Root之外的账号及其密码。MYSQL_DATABASE
:用于设置生成容器时需要新建的数据库。
验证结果
如果您想要查看已配置的环境变量,可以登录SAE控制台,在目标应用的版本列表页面,单击目标版本,然后在版本详情页面的版本实例页签,查看所有版本实例,在目标实例的操作列,单击Webshell,输入env
查看环境变量,即可看到当前应用版本配置的环境变量。