Docker コンテナ チュートリアル: 入門から習得まで
Docker は、アプリケーションとその依存関係をコンテナにパッケージ化できるオープン ソースのコンテナ化プラットフォームであり、ローカルのどこにでもデプロイできるように一貫した開発およびランタイム環境を提供します。走る。 Docker のコンテナ化テクノロジは、DevOps およびクラウド コンピューティングの分野で広く使用されており、現在最も人気のあるコンテナ化ツールの 1 つでもあります。
このチュートリアルでは、Docker コンテナの基本から始めて、Docker コンテナの主要な側面に習熟するまで徐々に深めていきます。
1. Docker コンテナの基礎知識
Docker には、イメージとコンテナという 2 つの中心的な概念があります。イメージは、アプリケーションとその依存関係を含む軽量の読み取り専用テンプレートです。コンテナーはイメージに基づいて作成された実行中のインスタンスであり、通常はアプリケーションやテスト環境を実行するために使用されます。
次のコマンドを使用して Docker でコンテナを実行します。
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
このうち、OPTIONS はコンテナのオプションを表し、IMAGE はコンテナのベースとなるイメージを表し、COMMAND と ARG はコンテナのオプションを表します。コンテナによって実行されるコマンドとパラメータ。
たとえば、次のコマンドは Docker 内の Ubuntu イメージに基づいてコンテナーを実行し、/bin/bash コマンドを実行します:
docker run -it ubuntu /bin/bash
Docker コンテナのステータスを表示するには、次のコマンドを使用してください:
docker ps [OPTIONS]
OPTIONS はコンテナ リストのオプションを表します。使用できるオプションは次のとおりです:
たとえば、次のコマンドは実行中の Docker コンテナを一覧表示します:
docker ps
Dockerfile ファイルを使用できます。 Docker コンテナ環境にインストールする必要があるソフトウェア パッケージを定義します。 Dockerfile は、Docker イメージの構築に使用される複数のコマンドとパラメーターを含むテキスト ファイルです。 Dockerfile のサンプル コンテンツは次のとおりです。
FROM ubuntu:latest RUN apt-get update && apt-get install -y nginx
上記の Dockerfile は、Ubuntu Linux ディストリビューションに基づいたイメージを定義し、apt-get コマンドを使用して nginx パッケージをインストールします。次に、次のコマンドを使用してイメージを構築します:
docker build -t my-nginx-image .
ここで、my-nginx-image はイメージの名前で、「.」は Dockerfile が配置されているディレクトリの現在のディレクトリを表します。 。
2. Docker コンテナの高度なアプリケーション
Docker コンテナは、より高い負荷に合わせて必要に応じて拡張できます。次のコマンドを使用して、複数のコンテナを作成できます。
docker-compose up -d
このうち -d オプションは、コンテナをバックグラウンド プロセスとして実行することを意味します。
ファイルの確認、コマンドの実行など、Docker コンテナ内でいくつかの操作を実行する必要がある場合があります。次のコマンドを使用して、実行中の Docker コンテナーに入ることができます:
docker exec -it [CONTAINER ID] /bin/bash
ここで、CONTAINER ID はコンテナーの ID を表します。例:
docker exec -it bb0cd62f8cac /bin/bash
Docker コンテナを使用して開発することで、開発環境の一貫性と信頼性を実現できます。次のコマンドを使用してコンテナを起動し、現在のディレクトリをボリュームとしてコンテナにマウントできます:
docker run --rm -it -v $(pwd):/app node:latest /bin/bash
このうち -rm オプションは、コンテナの実行終了後にコンテナが自動的に削除されることを意味します。 。 -v オプションは、ホスト上の現在のディレクトリ ($(pwd)) を Docker コンテナ内の /app ディレクトリにマウントすることを意味します。 node:latest は Docker イメージで、/bin/bash コマンドを実行します。
Docker コンテナは、より優れた運用セキュリティを提供しながら、悪意のある攻撃からアプリケーションとシステムを保護できます。 Docker コンテナを保護するためのいくつかの提案を次に示します。
3. Docker コンテナの高度なアプリケーション
Docker Compose は、Docker のオーケストレーション ツールです。複数のコンテナを管理します。 Docker Compose ファイルは、次のコマンドを使用して定義できます。
version: '3' services: web: build: . ports: - "5000:5000" redis: image: "redis:alpine"
ここで、バージョン 3 は Docker Compose ファイル形式のバージョンです。サービスは、Web や Redis など、管理する必要があるサービスを定義します。このうち、web はビルド定義を使用して現在のディレクトリをビルド コンテキストとして使用し、redis は image を使用して Docker Hub から Redis イメージを取得します。
Kubernetes は、Docker コンテナを自動的に管理する人気のあるコンテナ オーケストレーション システムです。以下は、Kubernetes を使用したコンテナ オーケストレーションの例です。
apiVersion: apps/v1 kind: Deployment metadata: name: my-deployment spec: replicas: 3 selector: matchLabels: app: my-app template: metadata: labels: app: my-app spec: containers: - name: my-container image: my-image:latest ports: - containerPort: 8080
この Kubernetes マニフェスト ファイルは、「my-deployment」という名前のデプロイメントを定義し、3 つのレプリカを実行します。また、「my-container」という名前のコンテナを定義し、my-image:latest イメージを使用し、ポート 8080 でサービスを公開します。
結論
Docker コンテナ テクノロジーは、DevOps およびクラウド コンピューティングの分野に強力なツールを提供し、開発および運用中の一貫性と信頼性を提供します。このチュートリアルでは、Docker コンテナーの基本、高度なアプリケーション、および高度なアプリケーションを詳しく説明し、実践的な例を提供して、この重要なテクノロジーを理解して使用するのに役立つことを願っています。
以上がDocker コンテナーについて教えることの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。