今回、CentOS 7 に Docker と Docker-Compose をインストールしてみたので、備忘録として手順を残しておきます。
ちなみに、Docker インストール後、hello-world コンテナーの起動から停止、削除まで実行してみました。
環境
CentOS: 7.9.2009
Docker: 20.10.3. build 48d30b5
Docker-Compose: 1.28.2, build 67630359
CentOSのバージョンを確認する
念の為、CentOS の現在のバージョンを確認しておきます。
バージョンを確認するには、以下のコマンドを実行します。
$ cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core)
CentOS 7 を最新にする
以下のようにコマンドを実行して、CentOS を最新にしました。
$ sudo yum update
旧バージョンの Docker を削除する
旧バージョンの Docker がインストールされている場合は、以下のコマンドを実行して削除します。
$ sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine
リポジトリの設定
Docker をインストールする前に、以下のコマンドを実行してリポジトリの設定をします。
$ sudo yum install -y yum-utils $ sudo yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo
Docker のインストール
続いて、以下のコマンドを実行して Docker をインストールします。
sudo yum install docker-ce docker-ce-cli containerd.io
Docker のインストールができたら、以下のコマンドを実行してバージョンを確認しましょう。
$ docker --version docker version 20.10.3. build 48d30b5
Docker を起動する
以下のコマンドを実行して、Docker を起動します。
$ sudo systemctl start docker
Docker が起動したかを確認するには、以下のコマンドを実行します。「active ( running )」の文字があれば、Docker は起動しています。
$ sudo systemctl status docker
OS 再起動後に、自動でDocker が起動されるようにする
OS を再起動しても、Docker が自動で起動するように設定するには、以下のコマンドを実行します。
$ sudo systemctl enable docker
Docker-Compose のインストール
続いて、以下のコマンドを実行して Docker-Compose をインストールします。
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.28.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
続いて、以下のコマンドを実行して Docker-Compose に実行権限を与えます。
$ sudo chmod +x /usr/local/bin/docker-compose
最後に、以下のコマンドで Docker-Compose のバージョンを確認します。
$ docker-compose --vesrion docker-compose version 1.28.2, build 67630359
上記を実行しても、うまく Docker-Compose のバージョンが使用できない場合は、以下のコマンドを実行してシンボリックリンクを作成します。
sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
Hello-World してみる
Docker の動作確認のため以下の docker run コマンドを実行します。「Hello from Docker!」が表示されれば、Docker は正常に起動しています。
$ sudo docker run hello-world [sudo] password for hiro: Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 0e03bdcc26d7: Pull complete Digest: sha256:31b9c7d48790f0d8c50ab433d9c3b7e17666d6993084c002c2ff1ca09b96391d Status: Downloaded newer image for hello-world:latest Hello from Docker!
コンテナを停止する
Docker が正常に起動することを確認できたら、Hello World のコンテナを停止します。
はじめに、以下のコマンドを実行して、起動しているコンテナを確認します。
$ sudo docker ps -a [sudo] password for hiro: ***** CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 2dfda2048023 hello-world "/hello" 3 hours ago Exited (0) 3 hours ago hopeful_ishizaka
CONTAINER ID を確認できたら「docker stop <CONTAINER ID> 」でコンテナを停止します。
$ sudo docker stop 2dfda2048023 2dfda2048023
コンテナを削除する
次に、「docker rm <CONTAINER ID> 」でコンテナを削除します。
$ sudo docker rm 2dfda2048023 2dfda2048023
Docker イメージを削除する
最後に hello-world のイメージを削除します。
はじめに、「docker images」コマンドで、ダウンロードされているイメージを確認します。
[sudo] password for hiro: REPOSITORY TAG IMAGE ID CREATED SIZE hello-world latest bf756fb1ae65 13 months ago 13.3kB
IMAGE ID が確認できたら「docker rmi 」でイメージを削除します。
$ sudo docker rmi bf756fb1ae65 [sudo] password for hiro: Untagged: hello-world:latest Untagged: hello-world@sha256:31b9c7d48790f0d8c50ab433d9c3b7e17666d6993084c002c2ff1ca09b96391d Deleted: sha256:bf756fb1ae65adf866bd8c456593cd24beb6a0a061dedf42b26a993176745f6b Deleted: sha256:9c27e219663c25e0f28493790cc0b88bc973ba3b1686355f221c38a36978ac63
コメント