Dockerは、アプリケーションを開発、公開、および実行できるオープンプラットフォームです。 このトピックでは、Elastic Compute Service (ECS) インスタンスにDockerをインストールして使用する方法について説明します。
Dockerのインストール
Alibaba Cloud Linux 3
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo dnf -y update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo dnf config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo dnf config-manager --add-repo=http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
Alibaba Cloud Linux専用のDandified YUM (DNF) リポジトリプラグインをインストールします。
sudo dnf -y install dnf-plugin-releasever-adapter --repo alinux3-plus
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
Alibaba Cloud Linux 2
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo yum -y update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
Alibaba Cloud Linux専用のYellowdog Updater Modified (YUM) リポジトリプラグインをインストールします。
sudo yum install yum-plugin-releasever-adapter --disablerepo=* --enablerepo=plus
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
CentOS 7.x
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo yum -y update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
CentOS 8.x
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo dnf -y update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo dnf config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo dnf config-manager --add-repo=http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
Ubuntu
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo apt-get update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | apt-key add - sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common sudo curl -fsSL http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu/gpg | apt-key add - sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] http://mirrors.cloud.aliyuncs.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
Debian
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo apt-get update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/debian/gpg | apt-key add - sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] https://mirrors.aliyun.com/docker-ce/linux/debian $(lsb_release -cs) stable" sudo apt-get update
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common sudo curl -fsSL http://mirrors.cloud.aliyuncs.com/docker-ce/linux/debian/gpg | apt-key add - sudo add-apt-repository -y "deb [arch=$(dpkg --print-architecture)] http://mirrors.cloud.aliyuncs.com/docker-ce/linux/debian $(lsb_release -cs) stable" sudo apt-get update
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
フェドラ
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo dnf -y update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo dnf config-manager --add-repo=https://mirrors.aliyun.com/docker-ce/linux/fedora/docker-ce.repo
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo dnf config-manager --add-repo=http://mirrors.cloud.aliyuncs.com/docker-ce/linux/fedora/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
Red Hat
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo dnf -y update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/rhel/docker-ce.repo
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/rhel/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
アナリスOS
最新バージョンのDockerをインストールする前に、docker -v
コマンドを実行して現在のDockerバージョンを照会します。 コマンドが使用できないことをコマンド出力が示す場合、Dockerはインストールされません。 以前のバージョンのDockerをインストールした場合は、Dockerおよび関連コンポーネントをアンインストールする必要があります。
パッケージ管理ツールを更新します。
sudo yum -y update
Alibaba Cloudリポジトリをインスタンスに追加します。 このリポジトリには、コマンドを実行してDockerをインストールおよび更新できるDockerソフトウェアパッケージが含まれています。
インスタンスがインターネットにアクセスできる場合は、次のコマンドを実行します。
sudo wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
インスタンスがインターネットにアクセスできない場合は、仮想プライベートクラウド (VPC) エンドポイントを使用して、次のコマンドを実行します。
sudo wget -O /etc/yum.repos.d/docker-ce.repo http://mirrors.cloud.aliyuncs.com/docker-ce/linux/centos/docker-ce.repo sudo sed -i 's|https://mirrors.aliyun.com|http://mirrors.cloud.aliyuncs.com|g' /etc/yum.repos.d/docker-ce.repo
Docker Community Edition (Docker-CE) 、containerd.ioという名前のコンテナランタイム、およびDockerビルドおよびオーケストレーションプラグインをインストールします。
sudo yum -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Dockerを起動し、システム起動時にDockerデーモンを起動できるようにします。 これにより、システムが起動するたびにDockerサービスが自動的に起動します。
説明systemctlコマンドの実行時にエラーが発生した場合は、エラーのトラブルシューティングを行います。 詳細については、「」をご参照ください。Linuxインスタンスでsystemctlコマンドを実行したときにエラーが発生した場合はどうすればよいですか?
sudo systemctl start docker sudo systemctl enable docker
Dockerのバージョンを照会して、Dockerがインストールされているかどうかを確認します。
sudo docker -v
次のコマンド出力が返された場合、DockerがECSインスタンスにインストールされます。
シンプルなwebアプリケーションイメージの作成
次の例では、NGINXイメージをベースイメージとして使用して、単純なwebアプリケーションイメージを作成する方法について説明します。
準備
インターネットにアクセスできるインスタンスで、次のdocker pull
コマンドを実行して最新のNGINXイメージを取得します。
sudo docker pull nginx:latest
イメージの作成
Dockerfile
ファイルを作成します。Dockerfile
ファイルは、Dockerイメージのビルド方法を定義する特殊なテキストファイルです。 Dockerfileファイルで、Dockerの基本イメージを指定し、基本イメージにインストールするソフトウェアパッケージと構成する設定を指定します。sudo touch Dockerfile
コンテンツを追加して、作成した
Dockerfile
ファイルを変更します。FROM nginx:latest RUN echo 'Hello World!' > /usr/share/nginx/html/index.html
Dockerfileファイルを使用してイメージをビルドします。
sudo docker build . -t hello-world:latest
新しいイメージに基づいてコンテナを作成し、コンテナに
hello-world
という名前を付けます。sudo docker run -d -p 80:80 --name hello-world hello-world:latest
イメージが作成されているかどうかを確認します。
curl http:// localhost
コマンドを実行します。こんにちは世界!
が返された場合、イメージは期待どおりに作成されます。
よくある質問
Linux ECSインスタンスでdnf config-managerコマンドを実行したときにエラーが発生した場合はどうすればよいですか。
Linux ECSインスタンスでdnf install docker-ceコマンドを実行したときにエラーが発生した場合はどうすればよいですか。
関連ドキュメント
Dockerの使用方法については、Dockerのドキュメントをご参照ください。
このトピックで説明する手順に従うと、Docker Composeがインスタンスにインストールされます。 Docker Composeがインストールされていない場合は、公式のDockerインストールドキュメントの説明に従ってDocker Composeをインストールします。
Alibaba Cloud Container Registryはアーティファクトセンターをリリースし、Alibaba Cloud WebサイトとOpenAnolisコミュニティから安全で信頼できるベースコンテナイメージを開発者に無料で提供します。 詳細については、「アーティファクトセンターの概要」をご参照ください。
Container Registry Enterprise EditionのP2Pアクセラレーション機能を使用して、イメージプルを高速化できます。 詳細については、「DockerがインストールされているホストでのP2Pアクセラレーション機能の使用」をご参照ください。
DockerでCLIツールを設定して、Alibaba Cloudリソースを管理できます。 詳細については、「DockerコンテナーでAlibaba Cloud CLIを実行する」をご参照ください。