すべてのプロダクト
Search
ドキュメントセンター

:UpdateFunction

最終更新日:Jan 14, 2026

関数の構成を更新します。

今すぐお試しください

この API を OpenAPI Explorer でお試しください。手作業による署名は必要ありません。呼び出しに成功すると、入力したパラメーターに基づき、資格情報が組み込まれた SDK コードが自動的に生成されます。このコードをダウンロードしてローカルで使用できます。

テスト

RAM 認証

下表に、この API を呼び出すために必要な認証情報を示します。認証情報は、RAM (Resource Access Management) ポリシーを使用して定義できます。以下で各列名について説明します。

  • アクション:特定のリソースに対して実行可能な操作。ポリシー構文ではAction要素として指定します。

  • API:アクションを具体的に実行するための API。

  • アクセスレベル:各 API に対して事前定義されているアクセスの種類。有効な値:create、list、get、update、delete。

  • リソースタイプ:アクションが作用するリソースの種類。リソースレベルでの権限をサポートするかどうかを示すことができます。ポリシーの有効性を確保するため、アクションの対象として適切なリソースを指定してください。

    • リソースレベルの権限を持つ API の場合、必要なリソースタイプはアスタリスク (*) でマークされます。ポリシーのResource要素で対応する ARN を指定してください。

    • リソースレベルの権限を持たない API の場合、「すべてのリソース」と表示され、ポリシーのResource要素でアスタリスク (*) でマークされます。

  • 条件キー:サービスによって定義された条件のキー。このキーにより、きめ細やかなアクセス制御が可能になります。この制御は、アクション単体に適用することも、特定のリソースに対するアクションに適用することもできます。Alibaba Cloud は、サービス固有の条件キーに加えて、すべての RAM 統合サービスに適用可能な一連の共通条件キーを提供しています。

  • 依存アクション:ある特定のアクションを実行するために、前提として実行が必要となる他のアクション。依存アクションの権限も RAM ユーザーまたは RAM ロールに付与する必要があります。

アクション

アクセスレベル

リソースタイプ

条件キー

依存アクション

fc:UpdateFunction

update

*Function

acs:fc:{#regionId}:{#accountId}:services/{#ServiceName}/functions/{#FunctionName}

なし なし

リクエスト構文

PUT /2021-04-06/services/{serviceName}/functions/{functionName} HTTP/1.1

パスパラメータ

パラメーター

必須 / 任意

説明

serviceName

string

必須

サービスの名前。

demoService

functionName

string

必須

関数の名前。

demoFunction

リクエストパラメーター

パラメーター

必須 / 任意

説明

If-Match

string

任意

変更対象のリソースが期待されるリソースと同じであることを保証するために使用されます。この値は、CreateFunctionGetFunction、または UpdateFunction 操作のレスポンスから取得されます。

e19d5cd5af0378da05f63f891c7467af

functionUpdateFields

object

任意

関数更新の構造体。

code Code

任意

Code 構造体。次の 2 つのメソッドのいずれかを使用して、関数コードパッケージを提供できます。リクエストでは、これらのメソッドのいずれか 1 つのみを使用する必要があります:

  • コードパッケージを格納する ossBucketNameossObjectName を指定します。

  • zipFile を ZIP パッケージの Base64 エンコードされたコンテンツとして指定します。

customContainerConfig CustomContainerConfig

任意

Custom Container ランタイムの構成。このパラメーターを設定すると、関数はカスタムコンテナイメージを使用して実行できます。

layers

array

任意

レイヤーのリスト。

説明

複数のレイヤーは、配列インデックスの降順でマージされます。インデックスが小さいレイヤーのコンテンツは、インデックスが大きいレイヤーの同じ名前のファイルを上書きします。

string

任意

レイヤーリソースの名前。

layername

description

string

任意

関数の説明。

test desc

environmentVariables

object

任意

関数に設定する環境変数。関数内で環境変数の値を取得できます。詳細については、「環境変数」をご参照ください。

string

任意

環境変数の構成。

{"key":"value"}

handler

string

任意

関数実行のエントリポイント。フォーマットはプログラミング言語によって異なります。詳細については、「ハンドラ」をご参照ください。

index.handler

memorySize

integer

任意

関数のメモリサイズ (MB) 。値は 64 MB の倍数である必要があります。メモリサイズはインスタンスタイプによって異なります。詳細については、「インスタンスタイプ」をご参照ください。

512

runtime

string

任意

関数のランタイム環境。有効値:nodejs20nodejs18nodejs16nodejs14nodejs12nodejs10nodejs8nodejs6nodejs4.4python3.10python3.9python3python2.7java11java8go1php7.2dotnetcore3.1dotnetcore2.1custom.debian10custom、および custom-container。詳細については、「サポートされている関数ランタイム」をご参照ください。

python3.9

timeout

integer

任意

関数の実行タイムアウト期間 (秒) 。最小値:1。デフォルト値:3。実行がこの時間制限を超えると、関数は終了します。

60

initializationTimeout

integer

任意

初期化関数の実行タイムアウト期間 (秒) 。最小値:1。デフォルト値:3。実行がこの時間制限を超えると、初期化関数は終了します。

60

initializer

string

任意

初期化関数のエントリポイント。フォーマットはプログラミング言語によって異なります。詳細については、「ハンドラ」をご参照ください。

index.handler

caPort

integer

任意

Custom ランタイムまたは Custom Container ランタイムの HTTP サーバーのリスニングポート。

9000

InstanceConcurrency

integer

任意

インスタンスの最大同時実行数。

10

instanceSoftConcurrency

integer

任意

インスタンスのソフト同時実行数。これはグレースフルスケールアウトに使用されます。インスタンス上の同時リクエスト数がソフト同時実行数を超えると、インスタンスはスケールアウトします。たとえば、インスタンスの起動が遅い場合、適切なソフト同時実行数を設定して、事前にインスタンスを起動できます。

値は instanceConcurrency 以下である必要があります。

5

instanceType

string

任意

関数のインスタンスタイプ。有効値:

  • e1:弾性インスタンス。

  • c1:パフォーマンスインスタンス。

  • fc.gpu.tesla.1:Tesla シリーズの GPU インスタンス。

  • fc.gpu.ampere.1:Ampere シリーズの GPU インスタンス。

  • fc.gpu.ada.1:Ada シリーズの GPU インスタンス。

  • g1fc.gpu.tesla.1 と同じです。

e1

instanceLifecycleConfig

InstanceLifecycleConfig

任意

インスタンスライフサイクル構成。

customDNS CustomDNS

任意

関数のカスタム DNS 構成。

customRuntimeConfig CustomRuntimeConfig

任意

Custom Runtime 関数の詳細な構成。

customHealthCheckConfig CustomHealthCheckConfig

任意

関数のカスタムヘルスチェック構成。これは Custom Runtime と Custom Container にのみ適用されます。

cpu

number

任意

関数の CPU 仕様 (vCPU) 。値は 0.05 vCPU の倍数である必要があります。

1.5

diskSize

integer

任意

関数のディスクサイズ (MB) 。有効値:512 MB および 10240 MB。

512

gpuMemorySize

integer

任意

関数の GPU メモリサイズ (MB) 。値は 1024 MB の倍数である必要があります。

2048

X-Fc-Account-Id

string

任意

ご利用の Alibaba Cloud アカウントの ID。

188077086902****

X-Fc-Code-Checksum

string

任意

関数コードパッケージの CRC-64 値。

1506052139770049xxxx

X-Fc-Date

string

任意

関数呼び出しの開始日。フォーマットは EEE,d MMM yyyy HH:mm:ss GMT です。

Wed, 11 May 2022 09:00:00 GMT

X-Fc-Trace-Id

string

任意

関数を呼び出すために使用される ID。レスポンスの `requestId` パラメーターに対応します。

test-trace-id

レスポンスフィールド

フィールド

説明

object

関数を更新するためのレスポンスパラメーター。

codeChecksum

string

関数コードパッケージの CRC-64 値。

5434025278388143772

codeSize

integer

システムから返される関数コードパッケージのサイズ (バイト) 。

1024

createdTime

string

関数が作成された時間。

2016-08-15T15:00:00.000+0000

customContainerConfig CustomContainerConfig

Custom Container ランタイムの構成。このパラメーターを設定すると、関数はカスタムコンテナイメージを使用して実行できます。

layers

array

レイヤーのリスト。

説明

複数のレイヤーは、配列インデックスの降順でマージされます。インデックスが小さいレイヤーのコンテンツは、インデックスが大きいレイヤーの同じ名前のファイルを上書きします。

string

レイヤーリソースの名前。

md5#layername#version

description

string

関数の説明。

This is a demo hello world function

environmentVariables

object

関数に設定されている環境変数。関数内で環境変数の値を取得できます。詳細については、「環境変数」をご参照ください。

string

環境変数の構成。

{"key":"value"}

functionId

string

システムが各関数に対して生成する一意の ID。

2d28e0e9-9ba5-4eed-8b1a-d3d9cd24****

functionName

string

関数の名前。

demo-function

handler

string

関数のエントリポイント。

index.handler

lastModifiedTime

string

関数が最後に変更された時間。

2016-08-15T17:00:00.000+0000

memorySize

integer

関数のメモリサイズ (MB) 。

512

runtime

string

関数のランタイム環境。有効値:nodejs20nodejs18nodejs16nodejs14nodejs12nodejs10nodejs8nodejs6nodejs4.4python3.10python3.9python3python2.7java11java8go1php7.2dotnetcore3.1dotnetcore2.1custom.debian10custom、および custom-container。詳細については、「サポートされている関数ランタイム」をご参照ください。

python3.9

timeout

integer

関数の実行タイムアウト期間 (秒) 。

10

initializationTimeout

integer

初期化関数の実行タイムアウト期間 (秒) 。最小値:1。デフォルト値:3。実行がこの時間制限を超えると、初期化関数は終了します。

60

initializer

string

初期化関数のエントリポイント。フォーマットはプログラミング言語によって異なります。

index.handler

caPort

integer

Custom ランタイムまたは Custom Container ランタイムの HTTP サーバーのリスニングポート。

9000

instanceType

string

関数のインスタンスタイプ。有効値:

  • e1:弾性インスタンス。

  • c1:パフォーマンスインスタンス。

  • fc.gpu.tesla.1:Tesla シリーズの GPU インスタンス。

  • fc.gpu.ampere.1:Ampere シリーズの GPU インスタンス。

  • fc.gpu.ada.1:Ada シリーズの GPU インスタンス。

  • g1fc.gpu.tesla.1 と同じです。

e1

instanceSoftConcurrency

integer

インスタンスのソフト同時実行数。これはグレースフルスケールアウトに使用されます。インスタンス上の同時リクエスト数がソフト同時実行数を超えると、インスタンスはスケールアウトします。たとえば、インスタンスの起動が遅い場合、適切なソフト同時実行数を設定して、事前にインスタンスを起動できます。

値は instanceConcurrency 以下である必要があります。

5

instanceLifecycleConfig

InstanceLifecycleConfig

インスタンスライフサイクル構成。

customDNS CustomDNS

関数のカスタム DNS 構成。

customRuntimeConfig CustomRuntimeConfig

Custom Runtime 関数の詳細な構成。

customHealthCheckConfig CustomHealthCheckConfig

関数のカスタムヘルスチェック構成。これは Custom Runtime と Custom Container にのみ適用されます。

cpu

number

関数の CPU 仕様 (vCPU) 。値は 0.05 vCPU の倍数である必要があります。

1.5

diskSize

integer

関数のディスクサイズ (MB) 。有効値:512 MB および 10240 MB。

512

instanceConcurrency

integer

単一インスタンスの同時実行数。

10

gpuMemorySize

integer

関数の GPU メモリサイズ (MB) 。値は 1024 MB の倍数である必要があります。

2048

layersArnV2

array

レイヤー ARN のリスト。

string

レイヤーの Alibaba Cloud リソースネーム (ARN) 。

acs:fc:cn-hangzhou:official:layers/Python310/versions/2

成功レスポンス

JSONJSON

{
  "codeChecksum": "5434025278388143772",
  "codeSize": 1024,
  "createdTime": "2016-08-15T15:00:00.000+0000",
  "customContainerConfig": {
    "args": "[\"-arg1\", \"value1\"]",
    "command": "[\"/code/myserver\"]",
    "image": "registry-vpc.cn-hangzhou.aliyuncs.com/fc-demo/helloworld:v1beta1",
    "accelerationType": "Default",
    "instanceID": "cri-xxxxxxxxxx",
    "webServerMode": true
  },
  "layers": [
    "md5#layername#version"
  ],
  "description": "This is a demo hello world function",
  "environmentVariables": {
    "key": "{\"key\":\"value\"}"
  },
  "functionId": "2d28e0e9-9ba5-4eed-8b1a-d3d9cd24****",
  "functionName": "demo-function",
  "handler": "index.handler",
  "lastModifiedTime": "2016-08-15T17:00:00.000+0000",
  "memorySize": 512,
  "runtime": "python3.9",
  "timeout": 10,
  "initializationTimeout": 60,
  "initializer": "index.handler",
  "caPort": 9000,
  "instanceType": "e1",
  "instanceSoftConcurrency": 5,
  "instanceLifecycleConfig": {
    "preFreeze": {
      "handler": "index.preStop",
      "timeout": 10
    },
    "preStop": {
      "handler": "index.preStop",
      "timeout": 10
    }
  },
  "customDNS": {
    "nameServers": [
      "8.8.x.x"
    ],
    "searches": [
      "ns1.svc.cluster-domain.example"
    ],
    "dnsOptions": [
      {
        "name": "ndots",
        "value": "2"
      }
    ]
  },
  "customRuntimeConfig": {
    "command": [
      "/code/myBootstrap"
    ],
    "args": [
      "args1"
    ]
  },
  "customHealthCheckConfig": {
    "httpGetUrl": "/ready",
    "initialDelaySeconds": 1,
    "periodSeconds": 1,
    "timeoutSeconds": 2,
    "failureThreshold": 1,
    "successThreshold": 2
  },
  "cpu": 1.5,
  "diskSize": 512,
  "instanceConcurrency": 10,
  "gpuMemorySize": 2048,
  "layersArnV2": [
    "acs:fc:cn-hangzhou:official:layers/Python310/versions/2"
  ]
}

エラーコード

完全なリストについては、「エラーコード」をご参照ください。

変更履歴

完全なリストについては、「変更履歴」をご参照ください。