Docker のインストールとデプロイメント
準備
可能な限り最高の構成を備えた新しい仮想マシン: 4G メモリ/CPU 4 コア ディスク 100G
公式 Web サイトのドキュメント: CentOS に Docker エンジンをインストールする | Docker ドキュメント
ステップ
1. 古いバージョンの docker をアンインストールします
[root@docker ~]# yum remove docker \
> docker-client \
> docker-client-latest \
> docker-common \
> docker-latest \
> docker-latest-logrotate \
> docker-logrotate \
> docker-engine
2.rpmソースのインストール
[root@docker ~]# yum install -y yum-utils #下载提供yum-config-manager的安装包
[root@docker ~]# yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo #下载docker仓库到/etc/yum.repos.d/下
海外のdockerイメージソースはダウンロード速度が遅すぎるため、Alibabaのdockerイメージソースを使用しました。
[root@docker ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
3. Docker エンジンをダウンロードする
[root@docker ~]# yum install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y
各エンジンの役割
ドッカーCE | ドッカーサーバー側 |
---|---|
docker-ce-cli | ドッカークライアント |
コンテナd.io | デーモンプロセスcontainerd、最下層はdockerの管理に使用されます |
docker-buildx-プラグイン | Moby BuildKit が提供する機能をサポートするための拡張 docker コマンド |
docker-compose-プラグイン | 指定された docker-compose.yml の取り決めに従って、リモート Docker がコンテナを実行できるようにします。 |
4. Docker のバージョンを確認する
[root@docker ~]# docker version
5. docker を起動し、起動時に自動的に起動するように設定します。
[root@docker ~]# systemctl start docker
[root@docker ~]# systemctl enable docker
6. docker が正常にインストールされたかどうかを確認する
[root@docker docker]# docker run hello-world
ここに示されている失敗は、Alibaba Cloud の Docker イメージ ソースを使用していることが原因です。国内ネットワークの理由により、アクセラレータを高速化するように構成する必要があります
Alibaba Cloud ミラー アクセラレーション アドレスを取得します: https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors
Alibaba Cloud Image Accelerator の構成
1. 新しいフォルダーを作成します
[root@docker docker]# mkdir -p /etc/docker/
2. アクセラレータを使用するようにデーモン構成ファイル /etc/docker/daemon.json を変更します。
[root@docker docker]# vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://52152375.mirror.aliyuncs.com"]
}
注: https://52152375.mirror.aliyuncs.com は私自身の Alibaba Cloud ミラー アクセラレータです。自分のものをコピーするには、Alibaba Cloud にログインする必要があります。
3.ドッカーを再起動します
[root@docker docker]# systemctl daemon-reload
[root@docker docker]# systemctl restart docker
docker が正常にインストールされているかどうかを再確認します
[root@docker docker]# docker run hello-world
この時点で、docker は正常にインストールされ、実行されています。