Todos os produtos
Search
Central de documentação

Function Compute:CreateFunction

Última atualização: Oct 19, 2026

Cria uma função.

Descrição da operação

Ao criar uma função usando um pacote de código do OSS, se o erro "unable to access object xxx in bucket xxx" for retornado, conceda ao usuário atual permissões de acesso ao bucket do OSS. Por exemplo, você pode anexar a política de acesso do sistema AliyunOSSReadOnlyAccess ou uma autorização personalizada com granularidade mais fina, como oss:GetObject. Para obter detalhes sobre o conteúdo da política, consulte Conceder a um usuário do Resource Access Management (RAM) as permissões para ler todos os recursos em um bucket.

Experimente agora

Experimente esta API no OpenAPI Explorer, sem necessidade de assinatura manual. Chamadas bem-sucedidas geram automaticamente código SDK correspondente aos seus parâmetros. Faça o download com segurança de credenciais integrada para uso local.

Testar

Autorização RAM

A tabela abaixo descreve a autorização necessária para chamar esta API. Você pode defini-la em uma política do Resource Access Management (RAM). As colunas da tabela estão detalhadas abaixo:

  • Ação: As ações que podem ser usadas no elemento Action das instruções de política de permissão do RAM para conceder permissões para executar a operação.

  • API: A API que você pode chamar para executar a ação.

  • Nível de acesso: O nível de acesso predefinido concedido para cada API. Valores válidos: create, list, get, update e delete.

  • Tipo de recurso: O tipo de recurso que suporta autorização para executar a ação. Indica se a ação suporta permissão em nível de recurso. O recurso especificado deve ser compatível com a ação. Caso contrário, a política será ineficaz.

    • Para APIs com permissões em nível de recurso, os tipos de recursos obrigatórios são marcados com um asterisco (*). Especifique o Nome de Recurso Alibaba Cloud (ARN) correspondente no elemento Resource da política.

    • Para APIs sem permissões em nível de recurso, é exibido como Todos os Recursos. Use um asterisco (*) no elemento Resource da política.

  • Chave de condição: As chaves de condição definidas pelo serviço. A chave permite controle granular, aplicando-se somente a ações ou a ações associadas a recursos específicos. Além das chaves de condição específicas do serviço, o Alibaba Cloud fornece um conjunto de chaves de condição comuns aplicáveis a todos os serviços compatíveis com RAM.

  • Ação dependente: As ações dependentes necessárias para executar a ação. Para concluir a ação, o usuário RAM ou a função RAM deve ter permissões para executar todas as ações dependentes.

Ação

Nível de acesso

Tipo de recurso

Chave de condição

Ação dependente

fc:CreateFunction

create

*Todos os recursos.

*

Nenhuma Nenhuma

Sintaxe da solicitação

POST /2023-03-30/functions HTTP/1.1

Parâmetros da solicitação

Parâmetro

Tipo

Obrigatório

Descrição

Exemplo

body CreateFunctionInput

Sim

As informações de configuração da função.

Elementos de resposta

Elemento

Tipo

Descrição

Exemplo

Function

As informações de configuração da função.

Exemplos

Resposta de sucesso

JSON formato

{
  "codeChecksum": "2825179536350****",
  "codeSize": 412,
  "cpu": 1,
  "createdTime": "2023-04-01T08:15:27Z",
  "customContainerConfig": {
    "accelerationInfo": {
      "status": "Ready"
    },
    "accelerationType": "Default",
    "acrInstanceId": "cri-xxxxxxxxxx",
    "command": [
      "arg1"
    ],
    "entrypoint": [
      "/code/bootstrap"
    ],
    "healthCheckConfig": {
      "failureThreshold": 1,
      "httpGetUrl": "/ready",
      "initialDelaySeconds": 1,
      "periodSeconds": 1,
      "successThreshold": 2,
      "timeoutSeconds": 2
    },
    "image": "registry-vpc.cn-hangzhou.aliyuncs.com/fc-demo/helloworld:v1beta1",
    "port": 9000,
    "registryConfig": {
      "authConfig": {
        "password": "abc***",
        "userName": "admin"
      },
      "certConfig": {
        "insecure": false,
        "rootCaCertBase64": "cm9vdF9jYV9jZXJ0"
      },
      "networkConfig": {
        "securityGroupId": "sg-xxxxxxxxxxxxxx",
        "vSwitchId": "vsw-xxxxxxxxxxxxxx",
        "vpcId": "vpc-xxxxxxxxxxxxxx"
      }
    },
    "resolvedImageUri": "stand-sh-registry-vpc.cn-shanghai.cr.aliyuncs.com/fc-demo2/springboot-helloworld@sha256:68d1****0d64d6"
  },
  "customDNS": {
    "dnsOptions": [
      {
        "name": "ndots",
        "value": "2"
      }
    ],
    "nameServers": [
      "8.8.x.x"
    ],
    "searches": [
      "ns1.svc.cluster-domain.example"
    ]
  },
  "customRuntimeConfig": {
    "args": [
      "arg1"
    ],
    "command": [
      "/code/bootstrap"
    ],
    "healthCheckConfig": {
      "failureThreshold": 1,
      "httpGetUrl": "/ready",
      "initialDelaySeconds": 1,
      "periodSeconds": 1,
      "successThreshold": 2,
      "timeoutSeconds": 2
    },
    "port": 9000
  },
  "description": "minha função",
  "disableInjectCredentials": "Env",
  "disableOndemand": false,
  "diskSize": 512,
  "enableLongLiving": false,
  "environmentVariables": {
    "key": "valor1"
  },
  "functionArn": "acs:fc:cn-shanghai:123:functions/functionName",
  "functionId": "aa715851-1c20-4b89-a8fb-***",
  "functionName": "my-function-1",
  "gpuConfig": {
    "gpuMemorySize": 2048,
    "gpuType": "fc.gpu.tesla.1"
  },
  "handler": "index.handler",
  "idleTimeout": 100,
  "instanceConcurrency": 1,
  "instanceIsolationMode": "",
  "instanceLifecycleConfig": {
    "initializer": {
      "command": [
        "curl -X POST 'http://localhost:9000/preWarm."
      ],
      "handler": "index.initializer.",
      "timeout": 10
    },
    "preStop": {
      "command": [
        "curl -X POST 'http://localhost:9000/preWarm."
      ],
      "handler": "index.initializer.",
      "timeout": 10
    }
  },
  "internetAccess": true,
  "invocationRestriction": {
    "disable": false,
    "lastModifiedTime": "",
    "reason": ""
  },
  "juiceFsConfig": {
    "envs": {
      "key": ""
    },
    "mountPoints": [
      {
        "args": [
          ""
        ],
        "mountDir": "",
        "remoteDir": "",
        "token": "",
        "volumeName": ""
      }
    ]
  },
  "lastModifiedTime": "2023-05-01T08:15:27Z",
  "lastUpdateStatus": "InProgress",
  "lastUpdateStatusReason": "O sistema está processando atualmente a otimização de aceleração para a imagem",
  "lastUpdateStatusReasonCode": "ImageOptimizing",
  "layers": [
    {
      "arn": "acs:fc:cn-beijing:186824xxxxxx:layers/fc_layer/versions/1",
      "size": 421
    }
  ],
  "lockInfo": {
    "lockedAt": "2025-04-05T10:00:00Z",
    "lockedBy": "AgentRun",
    "lockedResources": [
      ""
    ]
  },
  "logConfig": {
    "enableInstanceMetrics": true,
    "enableLlmMetrics": false,
    "enableRequestMetrics": true,
    "logBeginRule": "DefaultRegex",
    "logstore": "test-logstore",
    "project": "test-project"
  },
  "memorySize": 512,
  "microSandboxConfig": {
    "acrInstanceId": "",
    "image": "",
    "osType": "",
    "readyCommand": "",
    "registryConfig": {
      "authConfig": {
        "password": "abc***",
        "userName": "admin"
      },
      "certConfig": {
        "insecure": false,
        "rootCaCertBase64": "cm9vdF9jYV9jZXJ0"
      },
      "networkConfig": {
        "securityGroupId": "sg-xxxxxxxxxxxxxx",
        "vSwitchId": "vsw-xxxxxxxxxxxxxx",
        "vpcId": "vpc-xxxxxxxxxxxxxx"
      }
    },
    "startCommand": "",
    "steps": [
      {
        "args": [
          "[\"root\"]"
        ],
        "type": "USER, WORKDIR, ENV, RUN"
      }
    ]
  },
  "nasConfig": {
    "groupId": 100,
    "mountPoints": [
      {
        "enableTLS": true,
        "mountDir": "/home/test",
        "serverAddr": "***-uni85.cn-hangzhou.nas.com:/"
      }
    ],
    "userId": 100
  },
  "ossMountConfig": {
    "mountPoints": [
      {
        "bucketName": "my-bucket",
        "bucketPath": "/my-dir",
        "endpoint": "http://oss-cn-shanghai.aliyuncs.com",
        "mountDir": "/mnt/dir",
        "readOnly": true
      }
    ]
  },
  "polarFsConfig": {
    "groupId": 0,
    "mountPoints": [
      {
        "extraOptions": "--skip-delete-rows-check=false  --skip-dir-nlink=0 ",
        "instanceId": "pfs-xxx",
        "mountDir": "/mnt/polarfs",
        "readOnly": false,
        "remoteDir": "/share"
      }
    ],
    "userId": 0
  },
  "resourceGroupId": "",
  "role": "acs:ram::188077086902****:role/fc-test",
  "runtime": "python3.10",
  "sessionAffinity": "MCP_SSE",
  "sessionAffinityConfig": "{\\\"sseEndpointPath\\\":\\\"/sse\\\", \\\"sessionConcurrencyPerInstance\\\":20}",
  "state": "Pending",
  "stateReason": "Function creating",
  "stateReasonCode": "Creating",
  "tags": [
    {
      "Key": "k1",
      "Value": "v1"
    }
  ],
  "timeout": 60,
  "tracingConfig": {
    "params": {
      "key": "http://tracing-analysis-dc-hz.aliyuncs.com/adapt_xxx/api/otlp/traces"
    },
    "type": "Jaeger"
  },
  "vpcConfig": {
    "role": "acs:ram::188077086902****:role/fc-test",
    "securityGroupId": "sg-bp18hj1wtxgy3b0***",
    "vSwitchIds": [
      "vsw-bp1ozpcrdc6r****"
    ],
    "vpcId": "vpc-***"
  }
}

Códigos de erro

Consulte Códigos de Erro para uma lista completa.

Notas de versão

Consulte Notas de Versão para uma lista completa.