Maybaygiare.org

Blog Network

CentosとRHEL8/7でDockerをインストールして基本的なコンテナ操作を学ぶ–Part1

この4つの記事シリーズでは、オープンソースの軽量仮想化ツールであるDockerについて説明します。これは、オペレーティングシステムレベルの最上位で実行され、ユーザーが小さなコンテナにカプセル化されたアプリケーションを作成、実行、デプロイできるようにするオープンソースの軽量仮想化ツールです。

このタイプのLinuxコンテナは、高速で移植性があり、安全であることが証明されています。 Dockerコンテナ内で実行されるプロセスは、常にメインホストから分離され、外部の改ざんを防止します。

パート1:Dockerをインストールし、CentOSとRHEL8/7で基本的なコンテナ操作を学ぶ
パート4:LinuxでDockerコンテナを監視する方法

このチュートリアルでは、Centos/RHEL8/7でDockerをイステップ1:Dockerのインストールと設定

1. 以前のバージョンのDockerはdockerまたはdocker-engineと呼ばれていましたが、これらがインストールされている場合は、新しいdocker-ceバージョンをインストールする前にアンp>

# yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine

2. Docker Engineの最新バージョンをインストールするには、Dockerリポジトリをセットアップし、システム上でDocker stableリポジトリを有効にするためにyum-utilsパッケージをイp>

# yum install -y yum-utils# yum-config-manager \ --add-repo \ https://download.docker.com/linux/centos/docker-ce.repo

3. いくつかの問題のために、red Hatはdocker-ceの依存関係であるcontainerd.io > 1.2.0-3.el7のインストールをブロックしたため、新しいdocker-ceバージョンをDocker repositoryとcontainerdから手動でイp>

# yum install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm# yum install docker-ce docker-ce-cli

4. その後、Dockerパッケージがインストールされ、デーモンを起動し、そのステータスを確認し、以下のコマンドを使用してシステム全体で有効にします。

# systemctl start docker # systemctl status docker# systemctl enable docker
Dockerステータスを確認
Dockerステータスを確認

5. 最後に、次のコマンドを発行して、Dockerが正常に動作するかどうかを確認するためにコンテナテストイメージを実行します。

# docker run hello-world

以下のメッセージが表示される場合は、すべてが適切な場所にあります。

サンプル出力
Dockerのインストールを確認
Hello from Docker!This message shows that your installation appears to be working correctly.To generate this message, Docker took the following steps: 1. The Docker client contacted the Docker daemon. 2. The Docker daemon pulled the "hello-world" image from the Docker Hub. (amd64) 3. The Docker daemon created a new container from that image which runs the executable that produces the output you are currently reading. 4. The Docker daemon streamed that output to the Docker client, which sent it to your terminal.To try something more ambitious, you can run an Ubuntu container with: $ docker run -it ubuntu bashShare images, automate workflows, and more with a free Docker ID: https://hub.docker.com/For more examples and ideas, visit: https://docs.docker.com/get-started/

6. これで、いくつかの基本的なDockerコマンドを実行して、Dockerに関する情報を取得できます:

For system-wide information on Docker
# docker info
Check Docker Info
Check Docker Info
For Docker version
# docker version
Check Docker Version
Check Docker Version

7. To get a list of all available Docker commands type docker on your console.

# docker
リストドッカーコマンド
リストドッカーコマンド

ステップ2:ドッカーイメージをダウンロードします

8. Dockerコンテナを起動して実行するには、まずホストのDocker Hubからイメージをダウンロードする必要があります。 Docker Hubは、そのリポジトリから多くの無料画像を提供しています。

たとえば、UbuntuのDockerイメージを検索するには、次のコマンドを発行します:

# docker search ubuntu
Docker Ubuntu Imagesを検索
Docker Ubuntu Imagesを検索

9。 必要に応じて実行するイメージを決定した後、以下のコマンドを実行してローカルにダウンロードします(この場合、Ubuntuイメージがダウンロードされて使用されます)。

# docker pull ubuntu
Docker Ubuntuイメージをダウンロードします
Docker Ubuntuイメージをダウンロードします
# docker pull ubuntu
# docker pull ubuntu
# docker pull ubuntu
# docker pull ubuntu
# docker pull ubuntu
# docker pull ubuntu

10. ホスト上で利用可能なすべてのDockerイメージを一覧表示するには、次のコマンドを実行します。

# docker images
Dockerイメージを一覧表示
リストDockerイメージを一覧表示

11. もうDockerイメージが必要なく、ホストから削除したい場合は、次のコマンドを実行します。

# docker rmi ubuntu
Dockerイメージを削除します
Dockerイメージを削除します
ステップ3: Docker Containerを実行する

イメージに対してコマンドを実行すると、基本的にコンテナを取得します。 コンテナ内で実行されているコマンドが終了すると、コンテナは停止します(実行されていないコンテナまたは終了したコンテナが表示されます)。 同じイメージに別のコマンドを再度実行すると、新しいコンテナが作成されます。

作成されたすべてのコンテナは、docker rmコマンドを使用して削除することを選択するまで、ホストファイルシステムに残ります。

12. コンテナを作成して実行するには、ダウンロードしたイメージ、この場合はUbuntuにコマンドを実行する必要があるので、基本的なコマンドは、次の例のように、cat figcaption>

上記のコマンドは次のように分割されます。

# docker run 

13。 コンテナを作成するために実行されたコマンドでコンテナのいずれかを再度実行するには、まず、実行中および停止中の(非実行中の)コンテナのリスfigcaption>dockerコンテナを実行しているリスト

14。 コンテナIDが取得されたら、次のコマンドを発行することにより、コンテナの作成に使用されたコマンドを使用してコンテナを再度起動できます。

# docker start 923a720da57f

ここで、文字列923a720da57fはコンテナIDを表します。

ドッカーコンテナを開始
ドッカーコンテナを開始

15。 コンテナが実行中の状態である場合は、docker psコマンドを発行してIDを取得できます。 実行中のコンテナを停止するには、コンテナIDまたは自動生成された名前を指定してdocker stopコマンドを実行します。

# docker stop 923a720da57fOR# docker stop cool_lalande# docker ps
ドッカーコンテナを停止
ドッカーコンテナを停止

16。 コンテナIDを覚えておく必要がないように、よりエレガントな代替方法は、次の例のように、コマンドラインで--nameオプションを使用して作成:

# docker run --name ubuntu20.04 ubuntu cat /etc/issue
ドッカーコンテナに名前を追加
ドッカーコンテナに名前を追加

17。 次に、コンテナに割り当てた名前を使用して、以下の例のように、その名前を指定するだけでコンテナ(start、stop、remove、top、stats)をさらに操作できます。

# docker start ubuntu20.04# docker stats ubuntu20.04# docker top ubuntu20.04 

上記のコマンドの一部は、コンテナの作成に使用されたコマンドのプロセスが終了すると出力が表示されない場合があることに注意してください。 コンテナ内で実行されるプロセスが終了すると、コンテナは停止します。ステップ4:対話型セッションをコンテナに実行する

18. 対話的にコンテナシェルセッションに接続し、他のLinuxセッションと同じようにコマンドを実行するには、次のコマンドを発行します。

# docker run -it ubuntu bash
Dockerコンテナインタラクティブシェルを開始
Dockerコンテナインタラクティブシェルを開始
# docker run -it ubuntu bash
# docker run -it ubuntu bash
Dockerコンテナインタラクティブシェルを開始

上記のコマンドは次のように分割されます:

  1. -iは、対話型セッションを開始するために使用されます。
  2. -tTTYを割り当て、stdinとstdoutをアタッチします。li>
  3. ubuntuコンテナの作成に使用したイメージです。(または/bin/bash)は、Ubuntuコンテナ内で実行しているコマンドです。

19. 実行中のコンテナセッションから終了してホストに戻るには、exitコマンドを入力する必要があります。 Exitコマンドは、すべてのコンテナプロセスを終了し、停止します。

# exit

20。 対話的にコンテナターミナルプロンプトにログオンしていて、コンテナを実行状態に保ちながら対話セッションを終了する必要がある場合は、Ctrl+pCtrl+qキーを押してコンソールを終了してホストターミナルに戻ることができます。

ドッカーシェルセッションをアクティブに保つ
ドッカーシェルセッションをアクティブに保つ

21。 実行中のコンテナに再接続するには、コンテナIDまたは名前が必要です。 IDまたは名前を取得するにはdocker psコマンドを発行し、上の図に示すように、コンテナIDまたは名前を指定してdocker attachコマンドを実行します。

# docker attach <container id>

22。 ホストセッションから実行中のコンテナを停止するには、次のコマンドを発行します。

# docker kill <container id>

これは基本的なコンテナ操作のための 次のチュートリアルでは、Dockerコンテナにwebサーバーを保存、削除、および実行する方法について説明します。

コメントを残す

メールアドレスが公開されることはありません。