質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Cloud9

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

AWS Lambda

AWS Lambdaは、クラウド上でアプリを実行できるコンピューティングサービス。サーバーのプロビジョニングや管理を要せず複数のイベントに対してコードを実行します。カスタムロジック用いた他AWSサービスの拡張やAWSの規模やパフォーマンスを用いたバックエンドサービスを作成できます。

変数

変数は、プログラミングにおいて値や文字列などのデータを保持できる仕組みを指します。自由に名前を付けることができるため、管理しやすくなるのが特徴です。プログラムで変数の宣言を行い、値を代入して利用。保持したデータが通用する範囲でローカル変数とグローバル変数に分けられます。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

1881閲覧

AWS LambdaをCloud9上で開発。環境変数の呼び出し方法。

thth

総合スコア1

Cloud9

Cloud9は、クラウドからのプログラミングが可能になるWebサービス。IDEとしての機能が搭載されており、GitHubやHerokuなど他ツールとの連携も可能です。ブラウザ上で動くため、デバイスに関係なく開発環境を準備できます。

AWS Lambda

AWS Lambdaは、クラウド上でアプリを実行できるコンピューティングサービス。サーバーのプロビジョニングや管理を要せず複数のイベントに対してコードを実行します。カスタムロジック用いた他AWSサービスの拡張やAWSの規模やパフォーマンスを用いたバックエンドサービスを作成できます。

変数

変数は、プログラミングにおいて値や文字列などのデータを保持できる仕組みを指します。自由に名前を付けることができるため、管理しやすくなるのが特徴です。プログラムで変数の宣言を行い、値を代入して利用。保持したデータが通用する範囲でローカル変数とグローバル変数に分けられます。

サーバ

サーバは、 クライアントサーバモデルにおいてクライアントからの要求に対し 何らかのサービスを提供するプログラムを指す言葉です。 また、サーバーソフトウェアを稼動させているコンピュータ機器そのもののことも、 サーバーと呼ぶ場合もあります。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/03/01 09:03

編集2022/03/01 09:56

Lambda関数をCloud9上で開発しています。

Lambdaではテスト時に環境変数を呼び出せるのですが、Cloud9からテストをするとエラーとなってしまいます。

Cloud9でも同じ結果を得られるようにしたいです。

Lambda環境変数は、Cloud9上ではどのように設定すればよいでしょうか??

対処方法をご教授ください。

よろしくお願いいたします。


ソースコード

import json import os def lambda_handler(event, context): env = os.environ.get('ENV') return { 'ENV': f'環境変数 = {env}', }

Lambda環境変数
イメージ説明

Lambda結果

{ "ENV": "環境変数 = test" }

Cloud9側yamlファイル(env_test.yaml)

AWSTemplateFormatVersion: '2010-09-09' Transform: 'AWS::Serverless-2016-10-31' Description: An AWS Serverless Specification template describing your function. Resources: envtest: Type: 'AWS::Serverless::Function' Properties: Handler: lambda_function.lambda_handler Runtime: python3.8 CodeUri: . Description: '' MemorySize: 128 Timeout: 3 Role: 'arn:aws:iam::xxxxxxxxx:role/service-role/env_test-role-kot0qfag' Environment: Variables: ENV: test

Cloud9側payloadsファイル(lambda-payloads.json)

{ "key1": "value1", "key2": "value2", "key3": "value3" }

Cloud9側ローンチファイル(launch.json)

{ "configurations": [ { "type": "aws-sam", "request": "direct-invoke", "name": "env_test:lambda_function.lambda_handler (python3.8)", "invokeTarget": { "target": "template", "templatePath": "env_test/env_test.yaml", "logicalId": "envtest" }, "lambda": { "runtime": "python3.8", "payload": { "path": "env_test/lambda-payloads.json" }, "environmentVariables": {} } } ] }

Cloud9側結果

RuntimeError: Container does not exist. Cannot get logs for this container 2022-03-01 08:59:03 [ERROR]: "sam build" failed. Check system disk space. 2022-03-01 08:59:03 [WARN]: "sam build" failed: /home/ec2-user/environment/env_test/env_test.yaml

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

RuntimeError: Container does not exist. Cannot get logs for this container 2022-03-01 08:59:03 [ERROR]: "sam build" failed. Check system disk space.

エラーメッセージから、SAMが利用するコンテナのディスクスペース不足が原因として考えられます。

https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/serverless-apps-troubleshooting.html

Error: "RuntimeError: Container does not exist"

The sam build command can show this error if your system does not have enough disk space for the Docker container. If your system storage has only 1-2 GB of space available, sam build might fail during processing, even if system storage is not completely full before the build starts. For more information, see this GitHub issue.

尚、エラーはビルドで発生しており、環境変数が参照されるのはLambdaの実行時なので、エラー原因は環境変数ではありません。

投稿2022/03/05 04:16

編集2022/03/05 04:27
jhashimoto

総合スコア838

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問