jdcloud_sdk.services.nc.apis package

Submodules

jdcloud_sdk.services.nc.apis.AssociateElasticIpRequest module

class jdcloud_sdk.services.nc.apis.AssociateElasticIpRequest.AssociateElasticIpParameters(regionId, containerId, elasticIpId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • containerId – Container ID
  • elasticIpId – 弹性IP ID
class jdcloud_sdk.services.nc.apis.AssociateElasticIpRequest.AssociateElasticIpRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

容器绑定弹性公网 IP,绑定的是主网卡、主内网IP对应的弹性IP. <br>

一台云主机只能绑定一个弹性公网 IP(主网卡),若主网卡已存在弹性公网IP,会返回错误。<br> 如果是黑名单中的用户,会返回错误。

jdcloud_sdk.services.nc.apis.CreateContainersRequest module

class jdcloud_sdk.services.nc.apis.CreateContainersRequest.CreateContainersParameters(regionId)[source]

Bases: object

Parameters:regionId – Region ID
setContainerSpec(containerSpec)[source]
Parameters:containerSpec – (Optional) 创建容器规格
setMaxCount(maxCount)[source]
Parameters:maxCount – (Optional) 购买实例数量;取值范围:[1,100]
class jdcloud_sdk.services.nc.apis.CreateContainersRequest.CreateContainersRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

创建一台或多台指定配置容器。
  • 创建容器需要通过实名认证
  • 镜像
    • 容器的镜像通过镜像名称来确定
    • nginx:tag 或 mysql/mysql-server:tag 这样命名的镜像表示 docker hub 官方镜像
    • container-registry/image:tag 这样命名的镜像表示私有仓储的镜像
    • 私有仓储必须兼容 docker registry 认证机制,并通过 secret 来保存机密信息
  • hostname 规范
    • 支持两种方式:以标签方式书写或以完整主机名方式书写
    • 标签规范
      • 0-9,a-z(不分大小写)和 -(减号),其他的都是无效的字符串
      • 不能以减号开始,也不能以减号结尾
      • 最小1个字符,最大63个字符
    • 完整的主机名由一系列标签与点连接组成
      • 标签与标签之间使用“.”(点)进行连接
      • 不能以“.”(点)开始,也不能以“.”(点)结尾
      • 整个主机名(包括标签以及分隔点“.”)最多有63个ASCII字符
  • 网络配置
    • 指定主网卡配置信息
      • 必须指定一个子网
      • 一台云主机创建时必须指定一个安全组,至多指定 5 个安全组
      • 可以指定 elasticIp 规格来约束创建的弹性 IP,带宽取值范围 [1-200]Mbps,步进 1Mbps
      • 可以指定网卡的主 IP(primaryIpAddress),该 IP 需要在子网 IP 范围内且未被占用,指定子网 IP 时 maxCount 只能为1
      • 安全组 securityGroup 需与子网 Subnet 在同一个私有网络 VPC 内
      • 主网卡 deviceIndex 设置为 1
  • 存储
    • volume 分为 root volume 和 data volume,root volume 的挂载目录是 /,data volume 的挂载目录可以随意指定
    • volume 的底层存储介质当前只支持 cloud 类别,也就是云硬盘
    • 系统盘
      • 云硬盘类型可以选择 ssd、premium-hdd
      • 磁盘大小
        • ssd:范围 [10, 100]GB,步长为 10G
        • premium-hdd:范围 [20, 1000]GB,步长为 10G
      • 自动删除
        • 云盘默认跟随容器实例自动删除,如果是包年包月的数据盘或共享型数据盘,此参数不生效
      • 可以选择已存在的云硬盘
    • 数据盘
      • 云硬盘类型可以选择 ssd、premium-hdd
      • 磁盘大小
        • ssd:范围[20,1000]GB,步长为10G
        • premium-hdd:范围[20,3000]GB,步长为10G
      • 自动删除
        • 默认自动删除
      • 可以选择已存在的云硬盘
      • 单个容器最多可以挂载 7 个 data volume
  • 计费 - 弹性IP的计费模式,如果选择按用量类型可以单独设置,其它计费模式都以主机为准 - 云硬盘的计费模式以主机为准
  • 容器日志
    • 默认在本地分配10MB的存储空间,自动 rotate
  • 其他
    • 创建完成后,容器状态为running
    • maxCount 为最大努力,不保证一定能达到 maxCount

jdcloud_sdk.services.nc.apis.CreateSecretRequest module

class jdcloud_sdk.services.nc.apis.CreateSecretRequest.CreateSecretParameters(regionId, name, secretType)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • name – 机密数据名称,不能重复
  • secretType – 机密数据的类型,目前仅支持:docker-registry 类型,用来和docker registry认证的类型。
setData(data)[source]
param data:(Optional) 机密的数据。<br>

key 的有效字符包括字母、数字、-、_和.; <br> value 是 Base64 编码的字符串,不能包含换行符(在 linux 下使用 base64 -w 0选项),每个value长度上限为4KB,整个data的长度不能超过256KB; <br> 必须包含server、username、password 字段,email 字段是可选的。<br>

class jdcloud_sdk.services.nc.apis.CreateSecretRequest.CreateSecretRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

创建一个 secret,用于存放镜像仓库机密相关信息。

jdcloud_sdk.services.nc.apis.DeleteContainerRequest module

class jdcloud_sdk.services.nc.apis.DeleteContainerRequest.DeleteContainerParameters(regionId, containerId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • containerId – Container ID
class jdcloud_sdk.services.nc.apis.DeleteContainerRequest.DeleteContainerRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

容器状态必须为 stopped、running 或 error状态。 <br>

按量付费的实例,如不主动删除将一直运行,不再使用的实例,可通过本接口主动停用。<br> 只能支持主动删除按量计费类型的实例。包年包月过期的容器也可以删除,其它的情况还请发工单系统。计费状态异常的容器无法删除。

jdcloud_sdk.services.nc.apis.DeleteSecretRequest module

class jdcloud_sdk.services.nc.apis.DeleteSecretRequest.DeleteSecretParameters(regionId, name)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • name – Secret Name
class jdcloud_sdk.services.nc.apis.DeleteSecretRequest.DeleteSecretRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

删除单个 secret

jdcloud_sdk.services.nc.apis.DescribeContainerRequest module

class jdcloud_sdk.services.nc.apis.DescribeContainerRequest.DescribeContainerParameters(regionId, containerId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • containerId – Container ID
class jdcloud_sdk.services.nc.apis.DescribeContainerRequest.DescribeContainerRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询一台原生容器的详细信息

jdcloud_sdk.services.nc.apis.DescribeContainersRequest module

class jdcloud_sdk.services.nc.apis.DescribeContainersRequest.DescribeContainersParameters(regionId)[source]

Bases: object

Parameters:regionId – Region ID
setFilters(filters)[source]
param filters:(Optional) containerId - 实例ID,精确匹配,支持多个

privateIpAddress - 主网卡IP地址,模糊匹配,支持单个 az - 可用区,精确匹配,支持多个 vpcId - 私有网络ID,精确匹配,支持多个 status - 容器状态,精确匹配,支持多个 name - 实例名称,模糊匹配,支持单个 subnetId - 镜像ID,模糊匹配,支持单个

setPageNumber(pageNumber)[source]
Parameters:pageNumber – (Optional) 页码;默认为1
setPageSize(pageSize)[source]
Parameters:pageSize – (Optional) 分页大小;默认为20;取值范围[10, 100]
class jdcloud_sdk.services.nc.apis.DescribeContainersRequest.DescribeContainersRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

批量查询原生容器的详细信息<br>

此接口支持分页查询,默认每页20条。

jdcloud_sdk.services.nc.apis.DescribeQuotaRequest module

class jdcloud_sdk.services.nc.apis.DescribeQuotaRequest.DescribeQuotaParameters(regionId, resourceType)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • resourceType – resourceType - 资源类型,支持 [container, pod, secret]
class jdcloud_sdk.services.nc.apis.DescribeQuotaRequest.DescribeQuotaRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询资源的配额,支持:原生容器 pod 和 secret.

jdcloud_sdk.services.nc.apis.DescribeSecretRequest module

class jdcloud_sdk.services.nc.apis.DescribeSecretRequest.DescribeSecretParameters(regionId, name)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • name – Secret Name
class jdcloud_sdk.services.nc.apis.DescribeSecretRequest.DescribeSecretRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询单个 secret 详情

jdcloud_sdk.services.nc.apis.DescribeSecretsRequest module

class jdcloud_sdk.services.nc.apis.DescribeSecretsRequest.DescribeSecretsParameters(regionId)[source]

Bases: object

Parameters:regionId – Region ID
setFilters(filters)[source]
Parameters:filters – (Optional) name - secret名称,支持模糊搜索
setPageNumber(pageNumber)[source]
Parameters:pageNumber – (Optional) 页码;默认为1
setPageSize(pageSize)[source]
Parameters:pageSize – (Optional) 分页大小;默认为20;取值范围[10, 100]
class jdcloud_sdk.services.nc.apis.DescribeSecretsRequest.DescribeSecretsRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询 secret 列表。<br>

此接口支持分页查询,默认每页20条。

jdcloud_sdk.services.nc.apis.DisassociateElasticIpRequest module

class jdcloud_sdk.services.nc.apis.DisassociateElasticIpRequest.DisassociateElasticIpParameters(regionId, containerId, elasticIpId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • containerId – Container ID
  • elasticIpId – 弹性IP ID
class jdcloud_sdk.services.nc.apis.DisassociateElasticIpRequest.DisassociateElasticIpRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

容器解绑公网 IP,解绑的是主网卡、主内网 IP 对应的弹性 IP.

jdcloud_sdk.services.nc.apis.GetLogsRequest module

class jdcloud_sdk.services.nc.apis.GetLogsRequest.GetLogsParameters(regionId, containerId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • containerId – Container ID
setLimitBytes(limitBytes)[source]
Parameters:limitBytes – (Optional) 限制返回的日志文件内容字节数,取值范围 [1-4]KB,最大 4KB.
setSinceSeconds(sinceSeconds)[source]
Parameters:sinceSeconds – (Optional) 返回相对于当前时间之前sinceSeconds之内的日志。
setTailLines(tailLines)[source]
Parameters:tailLines – (Optional) 返回日志文件中倒数 tailLines 行,如不指定,默认从容器启动时或 sinceSeconds 指定的时间读取。
class jdcloud_sdk.services.nc.apis.GetLogsRequest.GetLogsRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

查询单个容器日志

jdcloud_sdk.services.nc.apis.ModifyContainerAttributeRequest module

class jdcloud_sdk.services.nc.apis.ModifyContainerAttributeRequest.ModifyContainerAttributeParameters(regionId, containerId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • containerId – Container ID
setDescription(description)[source]
Parameters:description – (Optional) 容器描述;和description必须要指定一个
setName(name)[source]
Parameters:name – (Optional) 容器名称
class jdcloud_sdk.services.nc.apis.ModifyContainerAttributeRequest.ModifyContainerAttributeRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

修改容器的 名称 和 描述。

jdcloud_sdk.services.nc.apis.StartContainerRequest module

class jdcloud_sdk.services.nc.apis.StartContainerRequest.StartContainerParameters(regionId, containerId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • containerId – Container ID
class jdcloud_sdk.services.nc.apis.StartContainerRequest.StartContainerRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

启动处于关闭状态的单个容器,处在任务执行中的容器无法启动。<br>

容器实例或其绑定的云盘已欠费时,容器将无法正常启动。<br>

jdcloud_sdk.services.nc.apis.StopContainerRequest module

class jdcloud_sdk.services.nc.apis.StopContainerRequest.StopContainerParameters(regionId, containerId)[source]

Bases: object

Parameters:
  • regionId – Region ID
  • containerId – Container ID
class jdcloud_sdk.services.nc.apis.StopContainerRequest.StopContainerRequest(parameters, header=None, version='v1')[source]

Bases: jdcloud_sdk.core.jdcloudrequest.JDCloudRequest

停止处于运行状态的单个实例,处于任务执行中的容器无法启动。

Module contents