AWS Cloud9 の Docker チュートリアル - AWS Cloud9

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

AWS Cloud9 の Docker チュートリアル

このチュートリアルでは、Amazon EC2 の Amazon Linux インスタンス内で実行中の Docker コンテナに AWS Cloud9 SSH 開発環境を接続する方法を示します。こうして、AWS Cloud9 IDE を使用をして、Docker コンテナ内部のコードおよびファイルを操作し、そのコンテナでコマンドを実行することが有効になります。Docker の詳細については、Docker ウェブサイトの「Docker とは」を参照してください。

このチュートリアルに従って、このサンプルを作成すると、AWS アカウントに料金が発生する可能性があります。Amazon EC2 などのサービスに対して発生する可能性がある料金も含まれます。詳細については、「Amazon EC2 の料金」を参照してください。

前提条件

  • Amazon Linux または Ubuntu Server を実行している Amazon EC2 インスタンスを用意する必要があります。このサンプルでは、AWS アカウントで Amazon Linux または Ubuntu Server を実行している Amazon EC2 インスタンスが既にあることを前提としています。Amazon EC2 インスタンスを起動するには、「Linux 仮想マシンの起動」を参照してください。ウィザードの 「Amazon マシンイメージ (AMI) の選択」ページで、表示名が Amazon Linux AMI または Ubuntu Server で始まる AMI を選択します。 

  • Amazon EC2 インスタンスを Amazon VPC 内で実行する場合は、追加の要件があります。AWS Cloud9 開発環境の VPC 設定」を参照してください。

  • Amazon EC2 インスタンスには、少なくとも 8〜16 GB の利用可能な空きディスク容量が必要です。このサンプルでは、3 GB 以上のサイズの Docker イメージを使用し、イメージ構築のためにさらに 3 GB 以上のディスク空き容量を使用することがあります。8 GB 以下の空き容量のディスクでこのサンプルの実行を試行すると、Docker イメージが構築されない、あるいは Docker コンテナが実行されない結果となる場合があります。インスタンスの空きディスク容量を確認するには、インスタンスで df -h (「人間が読める形式のディスクファイルシステム情報」) などのコマンドを実行します。既存のインスタンスのディスクサイズを増やすには、Linux インスタンス用 Amazon EC2 ユーザーガイドの「ボリュームの変更」を参照します。

ステップ 1: Docker のインストールと実行

このステップでは、Docker が Amazon EC2 インスタンスにインストールされているかをチェックし、まだインストールされていない場合は Docker をインストールします。Docker をインストールしたら、インスタンスでこれを実行します。

  1. ssh ユーティリティまたは PuTTY など、SSH クライアントを使って、実行中の Amazon EC2 インスタンスに接続します。これを行うには、「Linux 仮想マシンを起動する」の「ステップ 3: インスタンスに接続する」を参照してください。

  2. Docker がインスタンスにインストールされているかを確認します。これを行うには、docker オプションを使用して --version コマンドをインスタンスで実行します。

    docker --version

    Docker がインストールされている場合、Docker バージョンおよびビルド番号が表示されます。この場合、この手順の先のステップ 5 に進みます。

  3. Docker をインストールします。これを行うには、yum または apt コマンドを install アクションを指定して実行し、インストールする docker または docker.io パッケージを指定します。

    Amazon Linux の場合:

    sudo yum install -y docker

    Ubuntu Server の場合:

    sudo apt install -y docker.io
  4. Docker がインストールされていることを確認します。これを行うには、docker --version コマンドを再度実行します。Docker バージョンおよびビルド番号が表示されます。

  5. Docker を実行します。これを行うには、docker サービスおよび start アクションを指定して、service コマンドを実行します。

    sudo service docker start
  6. Docker が実行されていることを確認します。これを行うには、docker アクションで info コマンドを実行します。

    sudo docker info

    Docker が実行されている場合、Docker についての情報が表示されます。

ステップ 2: イメージの構築

このステップでは、Dockerfile を使用してインスタンスに Docker イメージを構築します。このサンプルでは、Node.js が含まれるイメージおよびサンプルチャートサーバーアプリケーションを使用します。

  1. インスタンスで Dockerfile を作成します。これを行うには、SSH クライアントをインスタンスに接続した状態で、インスタンスの /tmp ディレクトリ内に Dockerfile という名前のファイルを作成します。例えば、次のように touch コマンドを実行します。

    sudo touch /tmp/Dockerfile
  2. Dockerfile ファイルに次の内容を追加します。

    # Build a Docker image based on the Amazon Linux 2 Docker image. FROM amazonlinux:2 # install common tools RUN yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm RUN yum update -y RUN yum install -y sudo bash curl wget git man-db nano vim bash-completion tmux gcc gcc-c++ make tar # Enable the Docker container to communicate with AWS Cloud9 by # installing SSH. RUN yum install -y openssh-server # Ensure that Node.js is installed. RUN yum install -y nodejs # Create user and enable root access RUN useradd --uid 1000 --shell /bin/bash -m --home-dir /home/ubuntu ubuntu && \ sed -i 's/%wheel\s.*/%wheel ALL=NOPASSWD:ALL/' /etc/sudoers && \ usermod -a -G wheel ubuntu # Add the AWS Cloud9 SSH public key to the Docker container. # This assumes a file named authorized_keys containing the # AWS Cloud9 SSH public key already exists in the same # directory as the Dockerfile. RUN mkdir -p /home/ubuntu/.ssh ADD ./authorized_keys /home/ubuntu/.ssh/authorized_keys RUN chown -R ubuntu /home/ubuntu/.ssh /home/ubuntu/.ssh/authorized_keys && \ chmod 700 /home/ubuntu/.ssh && \ chmod 600 /home/ubuntu/.ssh/authorized_keys # Update the password to a random one for the user ubuntu. RUN echo "ubuntu:$(cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1)" | chpasswd # pre-install Cloud9 dependencies USER ubuntu RUN curl https://d2j6vhu5uywtq3.cloudfront.net/static/c9-install.sh | bash USER root # Start SSH in the Docker container. CMD ssh-keygen -A && /usr/sbin/sshd -D

    上のコンテンツを Dockerfile ファイルに追加するには、次のようにインスタンスで vi ユーティリティを使用できます。

    1. AWS Cloud9 を使用して /tmp/Dockerfile ファイルを開き、編集します。

      sudo vi /tmp/Dockerfile
    2. Dockerfile ファイルに前述のコンテンツをを貼り付けます。方法がわからない場合は、SSH クライアントのドキュメントを参照してください。

    3. コマンドモードに切り替えます。これを行うには Esc キーを押します (ウィンドウの下部から -- INSERT -- が消えます)。

    4. :wq と入力します (/tmp/Dockerfile ファイルに書き込み、このファイルを保存し、vi を終了します)。次に、Enter を押します。

    注記

    頻繁に更新される Docker イメージのリストは、AWS CodeBuild からアクセスできます。詳細については、AWS CodeBuild ユーザーガイドで 「CodeBuild が提供する Docker イメージ」を参照してください。

  3. インスタンスで、Docker コンテナで使用する AWS Cloud9 SSH パブリックキーを含むファイルを作成します。これを行うには、touch コマンドを実行して、Dockerfile ファイルと同じディレクトリ内に authorized_keys のような名前のファイルを作成します。

    sudo touch /tmp/authorized_keys
  4. authorized_keys ファイルに AWS Cloud9 SSH パブリックキーを追加します。AWS Cloud9 の SSH パブリックキーを取得するには、次の操作を行います。

    1. https://console.aws.amazon.com/cloud9/ で、AWS Cloud9 コンソールを開きます。

    2. AWS ナビゲーションバーで、AWS リージョンセレクターで、このトピックで後ほど、AWS Cloud9 開発環境を作成したい AWS リージョンを選択します。

    3. ウェルカムページが表示されたら、新しい AWS Cloud9 環境)で、Create environment (環境の作成)を選択します。それ以外の場合は、[Create environment (環境の作成)]を選択します。

    4. Name environment (環境に名前を付ける)]ページで、[名前]には、環境の名前を入力します。(ここでは、名前は重要ではありません。 後で別の名前を選択できます。)

    5. Next step]を選択します。

    6. Environment type (環境タイプ)]で[Connect and run in remote server (SSH) (リモートサーバーに接続して実行する)]を選択します。

    7. View public SSH key (パブリック SSH キーを表示)]を展開します。

    8. Copy key to clipboard (キーをクリップボードにコピー)]を選択します (これは[View public SSH key (パブリック SSH キーの表示)]と[Advanced settings (詳細設定)]の間になります)。

    9. [キャンセル] を選択します。

    10. クリップボードのコンテンツを authorized_keys ファイルに貼り付け、このファイルを保存します。例えば、このステップで前に説明したように、vi ユーティリティを使用できます。

  5. docker コマンドを build アクションを指定して実行し、タグ cloud9-image:latest をイメージに追加し、使用する Dockerfile ファイルへのパスを指定してイメージをビルドします。

    sudo docker build -t cloud9-image:latest /tmp

    成功すると、構築出力の最後の 2 行には Successfully built および Successfully tagged が表示されます。

    Docker でイメージが正しく構築されたことを確かめるには、docker コマンドに image ls アクションを指定して実行します。

    sudo docker image ls

    成功した場合には、出力の REPOSITORY フィールドが cloud9-imageTAG フィールドが latest に設定されたエントリが表示されます。

  6. Amazon EC2 インスタンスのパブリック IP アドレスをメモしておきます。これは ステップ 4: 環境の作成 で必要になります。インスタンスのパブリック IP アドレスがわからない場合は、インスタンスで次のコマンドを実行してそれを取得します。

    curl http://169.254.169.254/latest/meta-data/public-ipv4

ステップ 3: コンテナの実行

このステップでは、インスタンスで Docker コンテナを実行します。このコンテナは前のステップで構築したイメージに基づいています。

  1. Docker コンテナを実行するには、インスタンスで run アクションと以下のオプションを指定して docker コマンドを実行します。

    sudo docker run -d -it --expose 9090 -p 0.0.0.0:9090:22 --name cloud9 cloud9-image:latest
    • -d は、コンテナを実行していたルートプロセス (このサンプルでは、SSH クライアント) を終了して、デタッチ済みモードでコンテナを実行します。

    • -it は、割り当てられた疑似 TTY でコンテナを実行し、コンテナがアタッチされていない場合でも STDIN をオープンのままにします。

    • --expose は、コンテナに対して特定のポート (このサンプルでは、ポート 9090) を利用可能にします。

    • -p は、指定された IP アドレスとポートを介して特定のポートを Amazon EC2 インスタンスの内部で利用できるようにします。このサンプルでは、コンテナのポート 9090 は、Amazon EC2 インスタンスのポート 22 を介して内部からアクセスできます。

    • --name は、このコンテナの人間が読み取れる名前です (このサンプルでは、cloud9)。

    • cloud9-image:latest は、コンテナを実行するために使用するビルドイメージの人間が読み取れる名前です。

    Docker がコンテナを正しく実行していることを確かめるには、docker コマンドに container ls アクションを指定して実行します。

    sudo docker container ls

    成功した場合には、出力の IMAGE フィールドが cloud9-image:latestNAMES フィールドが cloud9 に設定されたエントリが表示されます。

  2. 実行中のコンテナにログインします。これを行うには、exec アクションと以下のオプションを指定して docker コマンドを実行します。

    sudo docker exec -it cloud9 bash
    • -it は、割り当てられた疑似 TTY でコンテナを実行し、コンテナがアタッチされていない場合でも STDIN をオープンのままにします。

    • cloud9 は、実行中のコンテナの人間が読み取れる名前です。

    • bash は、実行中のコンテナで標準のシェルを起動します。

    成功した場合、ターミナルプロンプトはログインしたユーザー名をコンテナとコンテナの ID に変更します。

    注記

    実行中のコンテナからログアウトする場合は、exit コマンドを実行します。ターミナルプロンプトはログインしたユーザー名をインスタンスとこのインスタンスのプライベート DNS に再度変更します。コンテナは実行中である必要があります。

  3. 実行中のコンテナでログイン後の AWS Cloud9 を開始する場所となるディレクトリで、アクセス許可を rwxr-xr-x に設定します。これは、所有者には読み取り/書き込み/実行のアクセス許可、グループには読み取り/実行のアクセス許可、その他には読み取り/実行のアクセス許可があることを意味します。例えば、ディレクトリのパスが ~ である場合、実行中のコンテナで chmod コマンドを次のように実行して、ディレクトリにこれらのアクセス許可を設定できます。

    sudo chmod u=rwx,g=rx,o=rx ~
  4. ステップ 4: 環境の作成 で必要となるため、Node.js バイナリを含む実行中のコンテナのディレクトリのパスをメモしておきます。このパスがわからない場合は、実行中のコンテナで次のコマンドを実行してこれを取得します。

    which node

ステップ 4: 環境の作成

このステップでは、AWS Cloud9 を使用して AWS Cloud9 SSH 開発環境を作成し、実行中の Docker コンテナにそれを接続します。AWS Cloud9 で作成した環境には AWS Cloud9 が表示されるため、このコンテナのファイルとコードの使用をスタートできます。

AWS Cloud9 コンソールを使用して AWS Cloud9 SSH 開発環境を作成します。CLI を使用して SSH 環境を作成することはできません。

前提条件

  • まず、「AWS Cloud9 のセットアップ」のステップを完了していることを確認します。これにより、AWS Cloud9 コンソールにサインインして環境を作成できます。

  • 既存のクラウドコンピューティングインスタンス (AWS アカウントの Amazon EC2 インスタンスなど)、または AWS Cloud9 から環境に接続するために使用するお客様自身のサーバーを特定します。

  • 既存のインスタンスまたは独自のサーバーが、すべての SSH ホスト要件を満たしていることを確認します。これには、特定のバージョンの Python、Node.js、およびその他のコンポーネントをインストールしていること、ログイン後に AWS Cloud9 をスタートしたいディレクトリに具体的なの許可を設定していること、関連した Amazon Virtual Private Cloud を設定していることなどが含まれます。

SSH 環境を作成する

  1. 前述の前提条件を完了していることを確認してください。

  2. SSH クライアントを使用して既存のインスタンスまたは独自のサーバーに接続します (まだ接続していない場合)。これにより、インスタンスまたはサーバーに必要な公開 SSH キー値を追加できます。詳細については、この手順で後ほど説明します。

    注記

    既存の AWS クラウドコンピューティングインスタンスに接続するには、以下のリソースを参照してください。

    独自のサーバーに接続するには、SSH を使用します。SSH は macOS および Linux オペレーティングシステムに既にインストールされています。Windows で SSH を使用してサーバーに接続するには、PuTTY をインストールする必要があります。

  3. https://console.aws.amazon.com/cloud9/ で AWS Cloud9 コンソールにサインインします。

  4. AWS Cloud9 コンソールにサインインしたら、上部のナビゲーションバーで、環境を作成する先の AWS リージョンを選択します。利用可能な AWS リージョンのリストについては、「AWS 全般のリファレンス」の「AWS Cloud9」を参照してください。

    AWS Cloud9 コンソールのリージョンセレクター
  5. 今回、開発環境を初めて作成する場合は、ウェルカムページが表示されます。左新規AWS Cloud9環境パネルで、[ 環境を作成 ]を選択します。

    以前に開発環境を作成したことがある場合は、画面の左側にあるペインを展開することもできます。[Your environments] (自分の環境)、[Create environment] (環境の作成) の順に選択します。

    ウェルカムページの場合:

    ウェルカムページが表示された場合は、[Create environment] (環境の作成) ボタンを選択します

    または、[Your environments] (自分の環境) ページの場合:

    ウェルカムページが表示されない場合は、[Create environment] (環境の作成) ボタンを選択します
  6. [Create environment] (環境の作成) ページで、環境の名前を入力します。

  7. Description (説明)]に、環境に関する説明を入力します。このチュートリアルでは、This environment is for the AWS Cloud9 tutorial. を使用します。

  8. [Environment type] (環境タイプ) で、以下のオプションから [Existing Compute] (既存のコンピューティング) を選択します。

    • [New EC2 instance] (新しい EC2 インスタンス) — AWS Cloud9 から SSH 経由で直接接続できる Amazon EC2 インスタンスを起動します。

    • [Existing compute] (既存のコンピューティング) — 開いているインバウンドポートを必要としない Amazon EC2 インスタンスを起動します。AWS Cloud9 は AWS Systems Manager を経由してインスタンスに接続します。

      • [Existing compute] (既存のコンピューティング) オプションを選択すると、Systems Manager がユーザーに代わって EC2 インスタンスとやり取りすることを許可するためのサービスロールと IAM インスタンスプロファイルが作成されます。両方の名前は、インターフェイスの下方にある [Systems Manager アクセス用のサービスロールとインスタンスプロファイル] セクションで確認できます。詳細については、「AWS Systems Manager を使用して no-ingress EC2 インスタンスにアクセスする」を参照してください。

    警告

    環境での EC2 インスタンスの作成に伴って、Amazon EC2 に対する課金が AWS アカウントで発生する場合があります。Systems Manager を使用して EC2 インスタンスへの接続を管理する場合、追加コストはかかりません。

    警告

    AWS Cloud9 は、SSH 公開キーを使用してサーバーに安全に接続します。安全な接続を確立するには、以下の手順に従って公開キーを ~/.ssh/authorized_keys ファイルに追加し、ログイン認証情報を入力します。[Copy key to clipboard] (キーをクリップボードにコピー) を選択して SSH キーをコピーするか、[View public SSH key] (SSH 公開キーを表示) を選択してキーを表示します。

  9. [Existing compute] (既存のコンピューティング) パネルの [User] (ユーザー) に、この手順で先にインスタンスまたはサーバーに接続するときに使用したログイン名を入力します。例えば、AWS クラウドコンピューティングインスタンスの場合は、ec2-userubuntu、または root を入力します。

    注記

    ログイン名をインスタンスやサーバーの管理者アクセス許可または管理者ユーザーに関連付けることをお勧めします。より具体的には、このログイン名がインスタンスやサーバーの Node.js インストールの所有者であることが推奨されます。これをチェックするには、インスタンスやサーバーのターミナルから、 ls -l $(which node) (または nvm を使用している場合は ls -l $(nvm which node) ) コマンドを実行します。このコマンドは、Node.js インストールの所有者名を表示します。また、インストールのアクセス許可、グループ名、場所も表示されます。

  10. [Host] (ホスト) に、インスタンスまたはサーバーのパブリック IP アドレス (優先) またはホスト名を入力します。

  11. [Port] (ポート) に、インスタンスまたはサーバーとの接続に AWS Cloud9 で使用するポートを入力します。または、デフォルトのポートをそのまま使用します。

  12. [Additional details - optional] (その他の詳細 - オプション) を選択し、環境パス、node.js バイナリへのパス、SSH ジャンプホスト情報を表示します。

  13. [Environment path] (環境パス) に、AWS Cloud9 を起動するインスタンスやサーバーのディレクトリへのパスを入力します。この手順の前提条件で、以前、これを確認しました。空白のままにすると、AWS Cloud9 はログイン後に通常インスタンスまたはサーバーを起動するディレクトリを使用します。これは通常、ホームまたはデフォルトのディレクトリです。

  14. [Path to Node.js binary] (Node.js バイナリへのパス) にパス情報を入力し、インスタンスまたはサーバーの Node.js バイナリへのパスを指定します。パスを取得するには、インスタンスまたはサーバーでコマンド which node (nvm を使用している場合は nvm which node) を実行できます。例えば、パスは /usr/bin/node のようになります。空白のままにした場合、AWS Cloud9 は接続の試行時に Node.js バイナリの場所の推測を試みます。

  15. [SSH jump host] (SSH ジャンプホスト) に、インスタンスまたはサーバーが使用するジャンプホストに関する情報を入力します。USER_NAME@HOSTNAME:PORT_NUMBER 形式を使用します (例: ec2-user@:ip-192-0-2-0:22)。

    ジャンプホストは、以下の要件を満たしている必要があります。

    • SSH を使用してパブリックインターネット経由で到達可能とする必要があります。

    • 特定のポートを経由したすべての IP アドレスからのインバウンドアクセスを許可する必要があります。

    • 既存のインスタンスまたはサーバーの ~/.ssh/authorized_keys ファイルにコピーしたパブリック SSH キー値を、ジャンプホストの ~/.ssh/authorized_keys ファイルにもコピーする必要があります。

    • Netcat をインストールする必要があります。

  16. 最大 50 個のタグを追加します。タグごとにキーを指定します。これを行うには、[Add new tag] (新しいタグを追加) を選択します。タグはリソースタグとして AWS Cloud9 環境にアタッチされ、基になるリソース (AWS CloudFormation スタック、Amazon EC2 インスタンス、Amazon EC2 セキュリティグループ) に伝達されます。タグの詳細については、IAM ユーザーガイドの「タグを使用した AWS リソースへのアクセスの制御」と、このガイドのタグに関する詳細情報を参照してください。

    警告

    これらのタグを作成後に更新した場合、変更は基になるリソースには反映されません。詳細については、タグに関する詳細情報の「基礎となるリソースへのタグ更新の伝播」を参照してください。

  17. [Create] (作成) を選択して環境を作成すると、ホームページにリダイレクトされます。アカウントが正常に作成されると、AWS Cloud9 コンソールの上部に緑色の点滅バーが表示されます。新しい環境を選択し、[Open in Cloud9] (Cloud9 で開く) を選択して IDE を起動できます。

    AWS Cloud9 コンソールの AWS Cloud9 IDE セレクター

    アカウントの作成に失敗すると、AWS Cloud9 コンソールの上部に赤い点滅バーが表示されます。アカウントの作成に失敗する原因としては、ウェブブラウザ、AWSアクセス許可、インスタンス、または関連するネットワークの問題が考えられます。アカウントが失敗する原因と考えられる問題の可能な解決方法については、「AWS Cloud9 のトラブルシューティング」セクションを参照してください。

注記

ご使用の環境がプロキシを使用してインターネットにアクセスしている場合は、プロキシの詳細を AWS Cloud9 に提供して、依存関係をインストールできるようにする必要があります。詳細については、「依存関係をインストールできませんでした」を参照してください。

ステップ 5: コードの実行

このステップでは、AWS Cloud9 IDEを使用して、実行中の Docker コンテナ内でサンプルアプリケーションを実行します。

  1. 実行中のコンテナに表示される AWS Cloud9 IDEを使用して、サンプルチャットサーバーを開始します。これを行うには、[Environment (環境)]ウィンドウで、サンプル workspace/server.js ファイルを右クリックし、[Run (実行)]を選択します。

  2. サンプルアプリケーションをプレビューします。これを行うには、[Environment (環境)]ウィンドウで workspace/client/index.html ファイルを開きます。次に、メニューバーで[Tools (ツール)、[Preview (プレビュー)]、[Preview Running Application (実行中のアプリケーションのプレビュー)]の順に選択します。

  3. アプリケーションのプレビュータブで、[Your Name (あなたの名前)]に名前を入力します。[Message (メッセージ)]にメッセージを入力します。次に、[Send (送信)]を選択します。チャットサーバーは、ユーザーの名前とメッセージをリストに追加します。

ステップ 6: クリーンアップする

このステップでは、環境を削除し、AWS Cloud9 と Docker サポートファイルをAmazon EC2 インスタンスから削除します。また、このサンプルを使用し終わった後 AWS アカウントで料金が継続的に発生するのを防ぐために、Docker を実行している Amazon EC2 インスタンスを終了する必要があります。

ステップ 6.1: 環境を削除する

環境を削除するには、AWS Cloud9 で環境を削除する を参照します。

ステップ 6.2: コンテナから AWS Cloud9 サポートファイルを削除する

環境の削除後、一部の AWS Cloud9 サポートファイルはコンテナに残ります。コンテナを引き続き使用したいが、これらのサポートファイルは不要である場合、ログイン後の AWS Cloud9 を開始する場所として指定したコンテナのディレクトリから .c9 フォルダを削除します。例えば、ディレクトリが ~ の場合、以下のように -r オプションを使用して rm コマンドを実行します。

sudo rm -r ~/.c9

ステップ 6.3: インスタンスから Docker サポートファイルを削除する

Docker コンテナ、Docker イメージ、および Amazon EC2 インスタンス上の Docker を保持したいと思わなくなりましたが、インスタンスは維持したい場合には、次のように Docker サポートファイルを削除できます。

  1. インスタンスから Docker コンテナを削除します。これを行うには、インスタンスで docker コマンドを stop rm の停止アクション、および人間が読み取れるコンテナの名前を指定して実行します。

    sudo docker stop cloud9 sudo docker rm cloud9
  2. インスタンスから Docker イメージを削除します。これを行うには、docker アクションおよびイメージタグを使用して image rm コマンドをインスタンスで実行します。

    sudo docker image rm cloud9-image:latest
  3. まだ残っているすべての追加 Docker ファイルを削除します。これを行うには、docker アクションを使用して system prune コマンドをインスタンスで実行します。

    sudo docker system prune -a
  4. Docker をアンインストールします。これを行うには、インスタンスで yum コマンドを remove アクションを指定して実行し、アンインストールする docker パッケージを指定します。

    Amazon Linux の場合:

    sudo yum -y remove docker

    Ubuntu Server の場合:

    sudo apt -y remove docker

    また、前のステップで作成した Dockerfile ファイルおよび authorized_keys ファイルを削除することもできます。例えば、インスタンスで rm コマンドを実行します。

    sudo rm /tmp/Dockerfile sudo rm /tmp/authorized_keys

ステップ 6.4: インスタンスの終了

Amazon EC2 インスタンスを終了するには、Linux インスタンス用 Amazon EC2 ユーザーガイド の 「インスタンスの終了」を参照します。