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

Function Compute:WebIDE の使用

最終更新日:Nov 09, 2025

Web Integrated Development Environment (WebIDE) は、Function Compute が提供するオンライン IDE であり、Visual Studio Code (VS Code) に似たクラウド開発エクスペリエンスを提供します。ローカルマシンに複雑な開発環境をセットアップすることなく、オンラインでコードの記述、デバッグ、デプロイができます。このトピックでは、WebIDE の特徴とユーザーインターフェイスについて説明し、Function Compute コンソールで WebIDE を設定する方法を説明します。

制限事項

  • WebIDE は、Python、Node.js、PHP、およびカスタムランタイムのみをサポートします。Java、Go、または C# ランタイムではオンライン編集はサポートされていません。これらのランタイムでは、コンパイルおよびパッケージ化された ZIP ファイルまたはバイナリファイルのみをアップロードできます。

  • WebIDE は、各ユーザーに 5 GB のストレージ容量を提供します。この制限を超えると、書き込み操作は失敗します。ストレージ容量は定期的にクリーンアップしてください。

  • 関数の WebIDE を開くと、インスタンスが自動的に起動します。このインスタンスは、1 vCPU と 1.5 GB のメモリを持つコンテナーインスタンスに相当します。

  • WebIDE インスタンスの環境は、関数のランタイム環境と同じです。ただし、このインスタンスは、カスタムレイヤーやマウントされた NAS または OSS リソースをロードできません。また、関数に設定された VPC 環境にアクセスすることもできません。これらの機能が必要な場合は、コードをデプロイしてから関数を呼び出すか、専用の WebIDE を使用できます。

  • 専用 WebIDE は、中国 (杭州)、中国 (上海)、中国 (北京)、中国 (張家口)、中国 (フフホト)、中国 (深圳)、中国 (香港)、シンガポール、日本 (東京)、ドイツ (フランクフルト)、および米国 (バージニア) リージョンでのみ利用可能です。他のリージョンで専用 WebIDE を使用するには、DingTalk グループ (ID: 64970014484) に参加して申請できます。

WebIDE インターフェイスの概要

次の図は、フルスクリーンモードの WebIDE インターフェイスを示しています。これは、① リソースマネージャー、② ファイルエディター、③ 関数操作、④ コマンドラインターミナルの 4 つのエリアに分かれています。web-ide

  • ① リソースマネージャー: コードファイルや依存関係ファイルなど、コードの構造を表示します。

  • ② ファイルエディター: 関数コードを編集します。編集が完了したら、右上隅の image.png アイコンをクリックしてコードをデバッグできます。オンラインコードをターミナル環境と同期するには、③ 関数操作エリアの [コードのデプロイ] をクリックします。

  • ③ 関数操作: 関数コードをデプロイしてテストします。[フルスクリーンを終了] をクリックすると、関数操作エリアは WebIDE インターフェイスの左上隅に移動します。

  • ④ コマンドラインターミナル: WebIDE ツールバーで、[ターミナル] > [新しいターミナル] を選択してコマンドラインターミナルを開くことができます。ターミナルでは、コードをデバッグしたり、サードパーティの依存関係をインストールしたりできます。

コンソールでの WebIDE の設定

前提条件

関数を作成します。詳細については、「関数の作成」をご参照ください。

手順

  1. Function Compute コンソールにログインします。左側のナビゲーションウィンドウで、[関数管理] > [関数] を選択します。

  2. 上部のナビゲーションバーで、リージョンを選択します。[関数] ページで、ターゲット関数をクリックします。

  3. (オプション) 関数詳細ページの [コード] タブで、右上隅にある [WebIDE の設定] をクリックします。[WebIDE の設定] パネルで、WebIDE のタイプを選択します。

    [サーバーレス] または [専用] WebIDE を選択できます。

    • サーバーレス

      デフォルトのバージョンです。無料で使用でき、VPC 内のリソースへのアクセスや、NAS または OSS リソースのマウントはサポートされていません。

    • 専用

      インスタンスにカスタムレイヤーをロードしたり、NAS または OSS リソースをマウントしたり、サービスに設定された VPC 環境にアクセスしたりする必要がある場合は、[専用] WebIDE を選択し、次の項目を設定します。

      • インスタンスタイプ

      • 実行タイムアウト

      専用 WebIDE を選択すると、Function Compute は既存の VPC、vSwitch、および汎用型 NAS ファイルシステムを再利用するか、関数が存在するリージョンの VPC に基づいて新しいものを自動的に作成します。自動的に作成されたリソースの課金の詳細については、「汎用型 NAS ファイルシステムの課金」をご参照ください。

  4. WebIDE インターフェイスで、関数コードを記述してテストし、必要に応じてサードパーティの依存関係をインストールします。

    WebIDE インターフェイスの詳細については、「WebIDE インターフェイスの概要」をご参照ください。

重要

専用 WebIDE を選択した場合は、関数が正しく実行できることを確認してください。そうしないと、WebIDE が開かない場合があります。

よくある質問

WebIDE のロードに失敗した場合はどうすればよいですか?

関数詳細ページをリフレッシュするか、WebIDE 環境を迅速にリセットしてみてください。WebIDE 環境をリセットする方法の詳細については、「関数の WebIDE の環境変数、ランタイム、レイヤーを迅速にリセットする方法」をご参照ください。

専用 WebIDE とはなんですか?

専用 WebIDE は、本質的にはアカウントにデプロイされる Function Compute 関数であり、その名前は _webide-server- で始まります。

専用 WebIDE を使用すると、インスタンスはカスタムレイヤーとマウントされた NAS または OSS リソースをロードできます。また、サービス用に設定された VPC へのアクセスもサポートします。これにより、ターミナルとオンラインのランタイム環境が同一であることが保証され、開発とデバッグが簡素化されます。インスタンスタイプを選択することもできます。たとえば、CPU とメモリの仕様を増やして WebIDE のパフォーマンスを向上させることができます。

専用 WebIDE を選択すると、基になる関数がアカウントで実行されます。したがって、次の項目に対して課金されます。

  • Function Compute での関数の呼び出しとリソース使用料。詳細については、「課金の概要」をご参照ください。

  • マウントされた NAS ファイルシステムに関連する料金。詳細については、「汎用型 NAS ファイルシステムの課金」をご参照ください。

ターミナルでは正常に実行されるのに、[関数のテスト] をクリックすると関数が失敗するのはなぜですか?

WebIDE は、開発者がコードを迅速にテストし、プロジェクトをビルドし、依存関係をインストールするのに役立ちます。ただし、WebIDE 環境は真の Function Compute 実行環境ではありません。WebIDE では、カスタムレイヤー、マウントされた NAS または OSS リソースを直接テストしたり、VPC を介してリソースにアクセスしたりすることはできません。

この問題を回避するには、専用の WebIDE を使用できます。また、コードの編集が完了した後に [コードのデプロイ] をクリックし、次に [関数のテスト] をクリックしてテストを実行することもできます。

関数の WebIDE の環境変数、ランタイム、レイヤーを迅速にリセットする方法

関数詳細ページまたは WebIDE インターフェイスをリフレッシュすると、オンライン関数の最新の環境変数、レイヤー、およびランタイムが WebIDE インスタンスに適用されます。ターミナルで env を実行して、最新の関数の環境変数やその他の情報を表示できます。

サーバーレス WebIDE のワークスペースデータはどのくらいの期間保持されますか?

デフォルトでは、ワークスペースは 48 時間保存されます。48 時間連続して WebIDE で関数を開かない場合、ワークスペースのコンテンツは削除されます。

さらに、オンラインコードがコンソールまたは SDK ツールを使用して変更された場合、関数の code checksum が変更されます。WebIDE をリフレッシュまたは再度開くと、ワークスペースのコンテンツは最新のオンラインコードと一致するように自動的に更新されます。

WebIDE でコードをデバッグできますか?

はい。WebIDE の各ランタイムに組み込まれている VS Code デバッグプラグインを直接使用できます。カスタムランタイムの他のあまり一般的でない言語については、適切な VS Code プラグインをインストールできます。

たとえば、関数が Python 3.9 ランタイムで実行される場合、ハンドラ関数を実行するためにいくつかの補助コードを追加する必要があります。コードは次の図の赤いボックスに示されています。vscode-auxiliary-code

関数コードを変更すると、git プラグインにコードの差分が表示されます。これは WebIDE が関数コードをホストしているからですか?

いいえ。関数コードパッケージの WebIDE を初めて開くと、git init が自動的に実行され、現在のコードとオンラインコードの差分が表示されます。[関数のデプロイ] をクリックするたびに、commit が自動的に生成されます。これにより、ターミナル内のコードがオンラインコードと同期されます。図の save function with codechecksum xxxx は、関数のデプロイが実行されたことを示します。この機能は、ユーザーエクスペリエンスを向上させます。

重要

関数コードパッケージに .git ディレクトリが含まれていないことを推奨します。WebIDE での問題を避けるために、コードをパッケージ化する際に .git フォルダを削除してください。

git-init-commit

同じ Alibaba Cloud アカウントの 2 人の RAM ユーザーが同じ関数を開くと、コードが異なるのはなぜですか?

Function Compute WebIDE は、同じ Alibaba Cloud アカウント下の Resource Access Management (RAM) ユーザーのワークスペースの隔離をサポートしています。たとえば、RAM ユーザー A が WebIDE A を開き、RAM ユーザー B が WebIDE B を開きます。RAM ユーザー B は、RAM ユーザー A が自分のワークスペースで行ったコードの変更を見ることはできません。この場合、RAM ユーザー A と RAM ユーザー B に表示されるコードは異なります。

RAM ユーザー A と RAM ユーザー B の両方が、自分のワークスペースのコードとオンラインの関数コードとの差分を確認できます。詳細については、「関数コードを変更すると、git プラグインにコードの差分が表示されます。これは WebIDE が関数コードをホストしているからですか?」をご参照ください。

WebIDE ターミナルが開くのが遅い、または開かない場合はどうすればよいですか?

次の手順を実行して、問題をトラブルシューティングできます。

  1. ネットワーク設定が正しいかどうかを確認します。たとえば、ローカルクライアントにアクセスを制限するプロキシが設定されているか、WebSocket プロトコルが無効になっているかを確認します。WebIDE は、リアルタイムの通信と対話に WebSocket を使用します。WebSocket が無効になっている場合、WebIDE は正しく実行されません。

  2. ローカルクライアントが中国以外のリージョンの関数を開こうとしているかどうかを確認します。ローカルクライアントのクロスボーダーネットワーク接続が悪い場合、中国以外のリージョンの関数を開こうとすると、接続が遅くなったり、接続に失敗したりする可能性があります。

  3. コードパッケージが大きすぎないか確認します。コードパッケージが大きすぎると、コードのアップロードやデプロイに時間がかかる場合があります。コードパッケージを最適化してから、再試行してみてください。

上記の手順を実行しても問題が解決しない場合は、お問い合わせください。

参考資料

  • WebIDE ターミナルを使用して、関数のサードパーティ依存関係をパッケージ化することもできます。詳細については、「WebIDE を使用して関数のサードパーティ依存関係をパッケージ化する」をご参照ください。

  • 関数コードまたはインストールするサードパーティの依存関係が大きい場合は、関数の依存関係をレイヤーに抽出するか、Function Compute のパブリックレイヤーを使用してコードパッケージのサイズを小さくすることができます。詳細については、「カスタムレイヤーの作成」をご参照ください。

  • Serverless Devs のローカルデバッグ機能を使用して、関数をローカルでテストすることもできます。詳細については、「ローカルデバッグ」をご参照ください。