AWS CloudShellコンピューティング環境:仕様とソフトウェア - AWS CloudShell

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

AWS CloudShellコンピューティング環境:仕様とソフトウェア

起動するとAWS CloudShellに基づくコンピューティング環境Amazon Linux 2シェルエクスペリエンスをホストするために作成されます。環境は、コンピューティングリソース (vCPU とメモリ)そして、の広い範囲を提供しますプリインストールされたソフトウェアコマンドラインインターフェイスからアクセスできます。ソフトウェアをインストールし、シェルスクリプトを変更して、デフォルト環境を構成することもできます。

コンピューティング環境リソース

EACHAWS CloudShellコンピューティング環境には、次の CPU およびメモリリソースが割り当てられます。

  • 1 vCPU (仮想中央処理装置)

  • RAM 2 GiB

さらに、環境は次のストレージ構成でプロビジョニングされます。

  • 1 GB の永続ストレージ(セッション終了後もストレージは保持されます)

詳細については、「永続的ストレージ」を参照してください。

重要

現在、AWS CloudShellコンピューティング環境は Docker コンテナをサポートしていません。

プリインストールされたソフトウェア

注記

なぜなら、AWS CloudShell開発環境は、最新のソフトウェアへのアクセスを提供するために定期的に更新されています。このドキュメントでは、特定のバージョン番号は提供していません。代わりに、インストールされているバージョンを確認する方法を説明します。多くの場合、これは、プログラム名の後に--versionオプション (たとえば、git --version).

Shells

プレインストールされたシェル
名前 説明 [Version information]

Bash

Bash シェルは、のデフォルトのシェルアプリケーションです。AWS CloudShell。

bash --version

PowerShell

コマンドラインインターフェイスとスクリプト言語のサポートを提供する PowerShell は、マイクロソフトの.NET コマンド言語ランタイムの上に構築されています。PowerShell は、という軽量コマンドを使用しています。cmdlets.NET オブジェクトを受け入れて返します。

(Get-Host).Version

Zシェル (zsh)

Zシェル、別名zshは、テーマとプラグインのカスタマイズサポートを強化したBourne Shellの拡張バージョンです。

zsh --version

AWSコマンドラインインターフェイス (CLI)

CLI
名前 説明 [Version information]

AWS CLI

-AWS CLIは、複数の管理に使用できるコマンドラインインターフェイスです。AWSサービスをコマンドラインから実行したり、スクリプトを使用して自動化したりできます。詳細については、「の使用AWS内のサービスAWS CloudShell」を参照してください。

最新バージョンの使用を保証する方法については、を参照してください。AWS CLIバージョン 2 の場合は、を参照してください。のインストールAWS CLIホームディレクトリに移動します

aws --version

EB CLI

-AWS Elastic BeanstalkCLI には、ローカルリポジトリからの環境の作成、更新、モニタリングを簡素化するコマンドラインインターフェイスが用意されています。

詳細については、「」を参照してください。Elastic Beanstalk コマンドラインインターフェイス (EB CLI) の使用AWS Elastic Beanstalkデベロッパーガイド

eb --version

Amazon ECS CLI

Amazon Elastic Container Service (Amazon ECS) コマンドラインインターフェイス (CLI) には、クラスターおよびタスクの作成、更新、モニタリングを簡素化する高レベルコマンドが用意されています。

詳細については、「」を参照してください。Amazon ECS コマンドラインインターフェイスの使用Amazon Elastic Contain Service 開発者ガイド

ecs-cli --version

AWS SAM CLI

AWS SAMCLI は、で動作するコマンドラインツールです。AWS Serverless Application Modelテンプレートとアプリケーションコード。いくつかのタスクを実行できます。これには、ローカルで Lambda 関数を呼び出す、サーバーレスアプリケーションのデプロイパッケージを作成する、サーバーレスアプリケーションをAWS.cloud

詳細については、「」を参照してください。AWS SAMCLI コマンドリファレンスAWS Serverless Application Modelデベロッパーガイド

sam --version

ランタイムと AWS SDK: Node.js と Python 3

ランタイムと AWS SDK
名前 説明 [Version information]

Node.js(npm付き)

Node.js は、非同期プログラミング手法を簡単に適用できるように設計された JavaScript ランタイムです。詳細については、「」を参照してください。Node.js の公式サイトのドキュメント

npm は JavaScript モジュールのオンラインレジストリへのアクセスを提供するパッケージマネージャーです。詳細については、「」を参照してください。公式npmサイトのドキュメント

  • Node.js:node --version

  • npm:npm --version

Node.js 内の SDK for JavaScript

このソフトウェア開発キット (SDK) は、Amazon S3、Amazon EC2、DynamoDB、Amazon SWF などの AWS のサービスに JavaScript オブジェクトを提供することにより、コーディングを簡素化します。詳細については、「AWS SDK for JavaScript デベロッパーガイド」を参照してください。

npm -g ls --depth 0 2>/dev/null | grep aws-sdk

Python

Python 3 と Python 2 はどちらもシェル環境で使用できます。Python 3 は現在、プログラミング言語のデフォルトバージョンと見なされます (Python 2 のサポートは 2020 年 1 月に終了しました)。詳細については、「」を参照してください。Python 公式サイトのドキュメント

また、Python のパッケージインストーラである pip がプリインストールされています。このコマンドラインプログラムを使用して、Python パッケージインデックスなどのオンラインインデックスから Python パッケージをインストールできます。詳細については、「」を参照してください。Python Packaging Authority が提供するドキュメント

  • Python 2:python --version

  • Python 3:python3 --version

  • pip:pip3 --version

SDK for Python (Boto3)

Boto はソフトウェア開発キット (SDK) で、Python 開発者は EC2 や S3 などの AWS サービスを作成、設定、管理するために使用します。SDK は、使いやすい、オブジェクト指向 API と AWS サービスへの低レベルのアクセスを提供します。

詳細については、「」を参照してください。Boto3 ドキュメント

pip3 list | grep boto3

開発ツールとシェルユーティリティ

開発ツールとシェルユーティリティ
名前 説明 [Version information]

バッシュコンプリート

bash-completion(bash-completion)は、部分的に型付けされたコマンドや引数のオートコンプリートをタブkey bash-completion がサポートするパッケージは/usr/share/bash-completion/completions

パッケージのコマンドのオートコンプリートを設定するには、プログラムファイルをソースする必要があります。たとえば、Git コマンドのオートコンプリートを設定するには、次の行を追加します。.bashrcそのため、この機能はいつでも利用できます。AWS CloudShellセッションが開始されます。

source /usr/share/bash-completion/completions/git

カスタム補完スクリプトを使用する場合は、それらを永続的なホームディレクトリに追加します ($HOME) で直接ソースする.bashrc

詳細については、「」を参照してください。READMEGitHub のページです。

yum info bash-completion

Git 用の CodeCommit ユーティリティ

git-remote-codeCommit はGitを拡張することにより、CodeCommit リポジトリからコードをプッシュおよびプルするための簡単な方法を提供するユーティリティです。これは、フェデレーティッドアクセス、ID プロバイダー、および一時的な認証情報を使用した接続をサポートするために推奨される方法です。

詳細については、「」を参照してください。への HTTPS 接続をセットアップする手順AWS CodeCommitgit-remote-codecommit でAWS CodeCommitユーザーガイド

pip3 list | grep git-remote-codecommit

Git

Git は、ブランチワークフローとコンテンツのステージングを通じて、最新のソフトウェア開発プラクティスをサポートする分散バージョン管理システムです。詳細については、「」を参照してください。Git の公式サイトのドキュメントページ

git --version

イプチルス

iputils パッケージには Linux ネットワーク用のユーティリティが含まれています。提供されるユーティリティの詳細については、を参照してください。GitHub の iputils リポジトリ

iputils ツールの例:arping -V

jq jq ユーティリティは JSON 形式のデータを解析して、コマンドラインフィルタによって変更された出力を生成します。詳細については、「」を参照してください。GitHub でホストされている jq マニュアル

jq --version

make

make ユーティリティはmakefiles一連のタスクを自動化し、コードのコンパイルを整理します。詳細については、「」を参照してください。GNU ドキュメントを作成する

make --version

man

man コマンドは、コマンドラインユーティリティとツールのマニュアルページを提供します。たとえば、man lsのマニュアルページを返します。lsディレクトリの内容を一覧表示するコマンド。詳細については、「」を参照してください。ウィキペディアのマニュアルページへのエントリー

man --version

procps

procps は、現在実行中のプロセスを監視および停止するために使用できるシステム管理ユーティリティです。詳細については、「」を参照してください。procps で実行できるプログラムをリストする README ファイル。

ps --version

SSH クライアント

SSH クライアントは、リモートコンピュータとの暗号化通信にセキュアシェルプロトコルを使用します。OpenSSH は、プリインストールされている SSH クライアントです。詳細については、「」を参照してください。OpenSSH サイトOpenBSD によって維持されています。

ssh -V

sudo

sudo ユーティリティを使用すると、ユーザーは別のユーザー (通常はスーパーユーザー) のセキュリティ権限でプログラムを実行できます。Sudo は、システム管理者としてアプリケーションをインストールする必要がある場合に便利です。詳細については、「」を参照してください。sudo マニュアル

sudo --version

tar

tar は、複数のファイルを単一のアーカイブファイル (tarball と呼ばれることが多い) にグループ化するために使用できるコマンドラインユーティリティです。詳細については、「」を参照してください。GNU tar ドキュメント

tar --version.

tmux

tmux は、複数のウィンドウで異なるプログラムを同時に実行するために使用できるターミナルマルチプレクサです。実行中、tmux はウィンドウの下部にあるステータスバーに現在のセッションに関する情報を表示します。詳細については、「」を参照してください。tmux の簡潔な紹介を提供するブログ

tmux -V

unzip

zip/unzipを参照
vim

vim は、ユーザーがテキストベースのインターフェイスを介して対話するカスタマイズ可能なエディタです。詳細については、「」を参照してください。vim.org で提供されるドキュメントリソース

vim --version

wget

wget は、コマンドラインでエンドポイントによって指定された Web サーバーからコンテンツを取得するために使用されるコンピュータプログラムです。詳細については、「」を参照してください。GNU Wget ドキュメント

wget --version

zip /enzip

zip/unzip ユーティリティは、データを失うことなくロスレスデータ圧縮を実現するアーカイブファイル形式を使用します。zip コマンドを呼び出して、単一のアーカイブ内のファイルをグループ化して圧縮します。解凍を使用して、アーカイブから指定したディレクトリにファイルを抽出します。

unzip --version

zip --version

のインストールAWS CLIホームディレクトリに移動します

CloudShell 環境にプリインストールされている他のソフトウェアと同様に、AWS CLIツールは、スケジュールされたアップグレードとセキュリティパッチで自動的に更新されます。の最新バージョンであることを確認するにはAWS CLIでは、シェルのホームディレクトリにツールを手動でインストールするように選択できます。

重要

のコピーを手動でインストールする必要がありますAWS CLIホームディレクトリで、次回 CloudShell セッションを開始したときに使用できるようにします。これは、ファイルが外部のディレクトリに追加されるためです。$HOMEシェルセッションが終了すると、削除されます。また、このコピーをインストールした後にも注意してください。AWS CLIの場合、自動的には更新されません。つまり、アップデートとセキュリティパッチを管理するのはユーザーの責任です。

の詳細については、「」を参照してください。AWS責任共有モデル。「」を参照してください。AWS CloudShell でのデータ保護

AWS CLI をインストールするには

  1. まず、CloudShell コマンドラインで、curlコマンドで圧縮されたコピーを転送するAWS CLIシェルにインストールする:

    curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
  2. zip フォルダを解凍します。

    unzip awscliv2.zip
  3. 次に、を実行します。AWS CLIインストーラーを使用して、指定したフォルダにツールを追加します。

    sudo ./aws/install --install-dir /home/cloudshell-user/usr/local/aws-cli --bin-dir /home/cloudshell-user/usr/local/bin

    正常にインストールされると、コマンドラインに次のメッセージが表示されます。

    You can now run: /home/cloudshell-user/usr/local/bin/aws --version
  4. 独自の便宜のために、更新も行っておくことをお勧めします。PATH実行時にツールのインストールへのパスを指定する必要がないように、環境変数awsコマンド:

    export PATH=/home/cloudshell-user/usr/local/bin:$PATH
    注記

    この変更を元に戻すとPATH,aws指定したパスを使用しないコマンドは、プリインストールされたバージョンのを使用します。AWS CLIデフォルトでは。

シェル環境にサードパーティーソフトウェアをインストールする

注記

「」を確認することをお勧めします。共有セキュリティ責任共有モデルサードパーティアプリケーションをにインストールする前にAWS CloudShellのコンピューティング環境。

デフォルトでは、すべてAWS CloudShellユーザーには sudo 権限があります。したがって、sudoコマンドを実行して、シェルのコンピューティング環境でまだ利用できないソフトウェアをインストールします。たとえば、sudoYUM パッケージ管理ユーティリティを使用して GNU nano テキストエディタをインストールします。

sudo yum install nano

次に、次のように入力して、新しくインストールしたプログラムを起動できます。nano

重要

yum インストールプログラムなどのユーティリティをディレクトリ内にパッケージ管理する (/user/binなど)。シェルセッションが終了するとリサイクルされます。つまり、セッションごとに追加のソフトウェアがインストールされ、使用されることを意味します。

スクリプトでシェルを修正する

デフォルトのシェル環境を変更する場合は、シェル環境が起動するたびに実行されるシェルスクリプトを編集できます。-.bashrcデフォルトの bash シェルが起動するたびにスクリプトが実行されます。

警告

を誤って変更した場合.bashrcファイルを使用すると、その後シェル環境にアクセスできないことがあります。編集する前にファイルのコピーを作成することをお勧めします。編集時にシェルを 2 つ開くことでリスクを軽減することもできます。.bashrc。一方のシェルでアクセスできなくなった場合でも、他のシェルにログインし、変更をロールバックできます。

誤って変更した後にアクセスできなくなった場合.bashrcまたは他のファイルを返すことができますAWS CloudShellデフォルト設定にホームディレクトリの削除

この手順では、.bashrcシェル環境が自動的に Z シェルの実行に切り替わるようにスクリプトを実行します。

  1. を開く.bashrcテキストエディタ (例:Vim) を使用します。

    vim .bashrc
  2. エディタインターフェイスで、インスタンスキーを押して、編集を開始し、以下を追加します。

    zsh
  3. 編集したを終了して保存するには.bashrcファイル、Escをクリックして Vim コマンドモードに入り、以下を入力します。

    :wq

  4. を使用するsourceコマンドをリロードする.bashrcfile:

    source .bashrc

    コマンドラインインターフェイスが再度使用可能になると、プロンプト記号が%Z シェルを使用していることを示します。

ホームディレクトリの削除

警告

ホームディレクトリを削除することは、ホームディレクトリに保存されているすべてのデータが完全に削除されるという不可逆的なアクションです。ただし、次のような場合は、このオプションを検討することをお勧めします。

  • ファイルを間違って変更し、AWS CloudShellコンピューティング環境。ホームディレクトリを削除すると、AWS CloudShellをデフォルト設定にします。

  • からすべてのデータを削除する必要がありますAWS CloudShellすぐに。なお、使用をやめた場合AWS CloudShellでAWSリージョン、永続ストレージは保持期間の終了時に自動的に削除される起動しない限りAWS CloudShellリージョンでもう一度です。

ファイルに長期保存が必要な場合は、Amazon S3 や CodeCommit などのサービスを検討してください。

ホームディレクトリを削除してリセットするにはAWS CloudShell

  1. CloudShell インターフェイスで、アクション,削除AWS CloudShellホームディレクトリ

  2. [] ダイアログボックスで [delete] という単語を入力して、削除オプション。

    
      [ホームディレクトリの削除] ボタンをアクティブにします。
  3. [Delete] (削除) をクリックします。

    新しいAWS CloudShellデフォルト設定のコンピューティング環境が作成され、起動されます。削除を確認するには、lsコマンドをホームディレクトリに追加します。