环境相关接口
更新时间:2019-06-14
环境相关接口
创建环境
方法 | API | 说明 |
---|---|---|
POST | /v1/env?clientToken={clientToken} | 创建一个新的环境 |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
clientToken | String | 必须 | 用于保证接口幂等性 |
appId | String | 必须 | 应用ID |
envName | String | 必须 | 环境的名称,同一个应用下环境的名称不可重复 |
domainPrefix | String | 必填 | 申请的域名前缀 |
imageTag | String | 可选 | 自定义镜像的版本信息 |
payType | String | 必须 | 付费方式,支持预付费与后付费,即Prepay, Postpay |
chargeTime | Int | 可选 | 付费时长,预付费时必填,单位为月,12表示一年 |
couponName | String | 可选 | 代金券名称 |
instanceAmount | Int | 必须 | 实例数量 |
cpuInCore | Int | 必须 | 每个实例最大使用的cpu核数 |
memoryInMB | Int | 必须 | 每个实例最大使用的内存,单位MB |
loadBalanceBandwidthInMbps | Int | 必须 | 负载均衡的最大网络带宽,单位Mbps |
返回参数
参数名称 | 参数类型 | 说明 |
---|---|---|
envId | String | 环境ID,由系统随机生成 |
charge | BigDecimal | 消费金额,单位元 |
expiredTime | Date | 预付费过期时间 |
orderId | String | 订单ID |
请求示例
POST /v1/env?clientToken=be31b98c-5e41-4838-9830-9be700de5a20 HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
{
"appId": "baeapp-5atue8m3sxsv",
"envName": "released",
"domainPrefix": "testapp",
"payType": "Prepay",
"chargeTime": 2,
"instanceAmount": 2,
"cpuInCore": 1,
"memoryInMB": 1024,
"loadBalanceBandwidthInMbps": 5
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
{
"envId": "baeenv-6zgpg8h8ujcq",
"charge": 100.12,
"expiredTime": "2016-08-01T23:00:10Z",
"orderId": "d04da3c16bd042af9e916a75bb1fa19g"
}
更新环境配置
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}?clientToken={clientToken} | 更新环境配置(异步接口),即对内存、CPU或带宽执行升级或降级操作 |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
clientToken | String | 必须 | 用于保证接口幂等性 |
couponName | String | 可选 | 代金券名称 |
instanceAmount | Int | 可选 | 实例数量 |
cpuInCore | Int | 可选 | 每个实例最大使用的cpu核数 |
memoryInMB | Int | 可选 | 每个实例最大使用的内存,单位MB |
loadBalanceBandwidthInMbps | Int | 可选 | 负载均衡的最大网络带宽,单位Mbps |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw?clientToken=be31b98c-5e41-4838-9830-9be700de5a20 HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
{
"instanceAmount": 2,
"cpuInCore": 1,
"memoryInMB": 1024,
"loadBalanceBandwidthInMbps": 5
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
删除环境
方法 | API | 说明 |
---|---|---|
DELETE | /v1/env/{envId} | 删除环境 |
请求示例
DELETE /v1/env/baeenv-iix5bwc10hfw HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
获取环境信息
方法 | API | 说明 |
---|---|---|
GET | /v1/env/{envId} | 获取环境信息 |
返回参数
返回值为一个env对象,如下表所示。
env参数列表
参数名称 | 参数类型 | 说明 |
---|---|---|
appId | String | 应用ID |
envId | String | 环境ID |
envName | String | 环境的名称 |
domainPrefix | String | 域名前缀 |
domains | List<domain> | 由domain组成的数组,具体内容参请看domain参数列表 |
code | Object | 一个envCode对象,具体内容请参看envCode参数列表 |
image | Object | 一个envImage对象,具体内容请参看envImage参数列表 |
createTime | DateTime | 环境的创建时间 |
instanceAmount | Int | 实例数量 |
instanceParameters | Object | 一个instanceParameters对象,具体内容请参看instanceParameters参数列表 |
loadBalanceParameters | Object | 一个loadBalanceParameters对象,共享版不返回此项。具体内容请参看loadBalanceParameters参数列表 |
status | String | 环境状态 |
loadBalance | Object | 负载均衡相关,共享版不返回此项 |
domain参数列表
参数名称 | 参数类型 | 说明 |
---|---|---|
domain | String | 环境的域名 |
default | Boolean | 该域名是否是由BAE提供的默认域名 |
status | String | 域名状态 |
envCode参数列表
参数名称 | 参数类型 | 说明 |
---|---|---|
versionId | String | 部署的代码的版本号 |
deployTime | DateTime | 部署时间 |
envAutoDeploy参数列表
参数名称 | 参数类型 | 说明 |
---|---|---|
enable | Boolean | 自动部署状态 |
envImage参数列表
参数名称 | 参数类型 | 说明 |
---|---|---|
imageId | String | 自定义镜像ID |
name | String | 自定义镜像名称 |
tag | String | 自定义镜像版本 |
instanceParameters参数列表
参数名称 | 参数类型 | 说明 |
---|---|---|
memoryInMB | Int | 实例内存大小 |
cpuInCore | Int | 实例最大使用的cpu核数 |
diskInGB | Int | 实例磁盘大小 |
bandwidthInMbps | int | 实例带宽 |
loadBalanceParameters参数列表
参数名称 | 参数类型 | 说明 |
---|---|---|
bandwidthInMbps | Int | 负载均衡带宽 |
loadBalance参数列表
参数名称 | 参数类型 | 说明 |
---|---|---|
ip | String | 负载均衡公网IP |
请求示例
GET /v1/env/baeenv-iix5bwc10hfw HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
{
"appId": "baeapp-5atue8m3sxsv",
"envId": "baeenv-iix5bwc10hfw",
"envName": "released",
"domainPrefix": "testapp",
"domains": [{
"domain": "testapp.duapp.com",
"default": true,
"status": "Active"
}],
"code": {
"versionId": "1",
"deployTime": "2016-06-01T23:00:10Z"
},
"createTime": "2016-06-01T23:00:10Z",
"instanceAmount": 2,
"instanceParameters": {
"cpuInCore": 1,
"memoryInMB": 1024,
"diskInGB": 2,
"bandwidthInMbps": 5
},
"loadBalanceParameters": {
"bandwidthInMbps": 10
},
"status": "Running",
"stopped": false,
"banned": false,
"loadBalance": {
"externalIp": "200.123.123.10",
"internalIp": "10.44.123.10"
}
}
查看环境列表
方法 | API | 说明 |
---|---|---|
GET | /v1/env?appId={appId} | 查看应用的环境列表 |
返回参数
参数名称 | 参数类型 | 说明 |
---|---|---|
envs | List<env> | 由env组成的数组 |
请求示例
GET /v1/env?appId=baeapp-5atue8m3sxsv HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
{
"envs": [{
"appId": "baeapp-5atue8m3sxsv",
"envId": "baeenv-iix5bwc10hfw",
"envName": "released",
"domainPrefix": "testapp",
"domains": [{
"domain": "testapp.duapp.com",
"default": true,
"status": "Active"
}],
"code": {
"versionId": "1",
"deployTime": "2016-06-01T23:00:10Z"
},
"createTime": "2016-06-01T23:00:10Z",
"instanceAmount": 2,
"instanceParameters": {
"cpuInCore": 1,
"memoryInMB": 1024,
"diskInGB": 2,
"bandwidthInMbps": 5
},
"loadBalanceParameters": {
"bandwidthInMbps": 10
},
"status": "Running",
"stopped": false,
"banned": false,
"loadBalance": {
"externalIp": "200.123.123.10",
"internalIp": "10.44.123.10"
}
}]
}
暂停环境
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}?pause | 暂停环境(异步接口) |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw?pause HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
恢复环境
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}?resume | 恢复环境(异步接口) |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw?resume HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
环境续费
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}?renew | 环境续费 |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
couponName | String | 可选 | 代金券名称 |
chargeTime | Int | 可选 | 续费时长,单位为月 |
返回参数
参数名称 | 参数类型 | 说明 |
---|---|---|
charge | BigDecimal | 消费金额,单位元 |
expiredTime | Date | 预付费过期时间 |
orderId | String | 订单ID |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw?renew HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
{
"couponName": "coupon123",
"chargeTime": 2
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
{
"charge": 100.12,
"expiredTime": "2016-06-01T23:00:10Z",
"orderId": "d04da3c16bd042af9e916a75bb1fa19g"
}
部署代码到环境
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}?deploy | 部署代码到环境(异步接口) |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
versionId | String | 必须 | 部署的代码的版本号 |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw?deploy HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
{
"versionId": "2"
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
判断环境名称是否存在
方法 | API | 说明 |
---|---|---|
HEAD | /v1/env?appId={appId}&envName={envName} | 判断应用下环境名称是否已存在 |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
appId | String | 必须 | 应用ID |
envName | String | 必须 | 环境名称 |
返回参数
环境名称不存在时返回状态码为404,已存在时返回状态码为204。
请求示例
HEAD /v1/env?appId=baeapp-5atue8m3sxsv&envName=released HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
返回示例
HTTP/1.1 404 Not Found
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
修改环境名称
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}?envName | 修改环境名称 |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
envName | String | 必须 | 环境名称 |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw?envName HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
{
"envName": "released"
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
设置环境https
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}/https | 设置环境HTTPS(异步接口) |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
certId | String | 必须 | 证书id |
enable | Boolean | 必须 | 是否打开https |
force | Boolean | 可选 | 是否打开强制https |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw/https HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
{
"certId": "cert-xxxxxx"
"enable" : true
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
获取环境https状态
方法 | API | 说明 |
---|---|---|
GET | /v1/env/{envId}/https | 获取环境HTTPS状态 |
返回参数
参数名称 | 参数类型 | 说明 |
---|---|---|
certId | String | 证书id |
enable | Boolean | 是否打开https |
force | Boolean | 是否打开强制https |
请求示例
GET /v1/env/baeenv-iix5bwc10hfw/https HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
{
"certIds": "cert-xxxxxx"
"enable" : true
"force" : false
}
设置环境自动部署
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}?autoDeploy | 设置环境自动部署 |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
enable | Boolean | 必须 | 是否打开自动部署 |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw?autoDeploy HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
{
"enable" : true
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4
更新环境镜像版本
方法 | API | 说明 |
---|---|---|
PUT | /v1/env/{envId}?imageTag | 更新环境镜像版本 |
请求参数
参数名称 | 参数类型 | 是否必须 | 说明 |
---|---|---|---|
imageTag | String | 必须 | 需要更新的镜像版本 |
请求示例
PUT /v1/env/baeenv-iix5bwc10hfw?imageTag HTTP/1.1
HOST: baepro.bj.baidubce.com
Authorization: {authorization}
Content-Type: application/json; charset=utf-8
x-bce-date: 2016-06-01T23:00:10Z
{
"imageTag" : "tag123"
}
返回示例
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
x-bce-request-id: 9ebc57ed-1ff5-480f-b5b1-6847ff54f2b4