docker compose helloworld を使い始めるための詳細なプロセス

docker compose helloworld を使い始めるための詳細なプロセス

前提条件

Compose は、Docker コンテナをオーケストレーションするためのツールです。Docker アプリケーションを統合および公開するための強力なツールです。マルチコンテナ アプリケーションを定義して実行できます。Compose では、YAML ファイルを使用してアプリケーション サービスを設定できます。次に、簡単なコマンドを 1 つ実行するだけで、構成したすべてのサービスが作成され、開始されます。

Docker-compose は Docker をベースとしているため、Docker-compose を使用する前に Docker をインストールする必要があります。

Compose を使用するには、基本的に次の 3 つの手順を実行します。

Dockerfile でアプリケーション環境を定義します。複数の Docker アプリケーションにすることができます。
docker-compose.yml でアプリケーションを構成するサービスを定義します。
docker-compose up コマンドを使用して、アプリケーション ソリューション全体を実行します。

参考URL:

Dockerのインストール

  • 古いバージョンをアンインストールする
sudo yum dockerを削除します\
                dockerクライアント\
                docker-client-最新 \
                docker-common \
                docker-最新 \
                docker-最新-logrotate \
              docker-logrotate \
                dockerエンジン
  • Docker Engine をインストールする - コミュニティ
sudo yum install -y yum-utils デバイスマッパー永続データ lvm2
sudo yum-config-manager \
  --リポジトリを追加\
  http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum インストール docker-ce docker-ce-cli containerd.io
  • Dockerを起動する
sudo systemctl dockerを起動します
  • プラグインをインストールする
yum インストール https://download.docker.com/linux/fedora/30/x86_64/stable/Packages/containerd.io-1.2.6-3.3.fc30.x86_64.rpm
  • Dockerが正常にインストールされているかどうかをテストする
docker --バージョン

到此docker安裝完成!!!

docker-compose のインストール

公式サイトのダウンロードアドレスは遅い場合がありますので、以下を使用することをお勧めします

  • ダウンロードしてインストールする
curl -L https://get.daocloud.io/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  • 承認(承認を受ける必要がある、権限がない場合には責任を負う)
chmod +x /usr/local/bin/docker-compose
  • docker-compose が正常にインストールされていることを確認します (バージョンを確認してください)
docker-compose バージョン

画像-20210918114058939

到此docker-compose 安裝成功!!!

Docker Compose を使い始める

docker-compose を通じて mysql および redis コンテナを生成する

1. プロジェクトディレクトリを作成し、

$ mkdir コンポーズテスト
$ cd コンポーズテスト

2. docker-compose.ymlファイルを作成し、プロジェクトディレクトリに配置します。

ファイルの具体的な内容は次のとおりです。

バージョン: "3.0"
サービス:
  mysqldb:
    イメージ:mysql:5.7.19
    コンテナ名: mysql
    ポート:
      - 「3306:3306」
    ボリューム:
      - /root/mysql/conf:/etc/mysql/conf.d
      - /root/mysql/logs:/logs
      - /root/mysql/データ:/var/lib/mysql
    環境:
      MYSQL_ROOT_PASSWORD: ルート
    ネットワーク:
      -ems
    依存:
      - レディス

  レディス:
    イメージ: redis:4.0.14
    コンテナ名: redis
    ポート:
      - 「6379:6379」
    ネットワーク:
      -ems
    ボリューム:
      - /root/redis/データ:/データ
    コマンド: redis-server
    
ネットワーク:
  EMS:

3. 開始

現在のフォルダから開始

  • フロントデスクのスタートアップ

docker-compose up

  • バックグラウンド起動

docker-compose up -d

出力ログは次の通りです

画像-20210918114856486

Dockerのコンテナが利用可能かどうかを確認する

コンテナが生成されているかどうかを確認する

画像-20210918115145469

Redisコンテナが利用可能かどうかをテストする

画像-20210918115226368

mysqlコンテナが利用可能かどうかをテストする

画像-20210918115329685

到此入門案例已經完成!!!

要約する

1. 権限の問題により、docker-composeコマンドを実行できません。権限を開いて次のコマンドを実行する必要があります。

chmod +x /usr/local/bin/docker-compose

2. 学習期間中、仮想マシンで docker-compose を使用して基本的なハードウェア設備を構築できます。これは非常に便利で、環境の設定や基本的なサービスのインストールにかかる時間を大幅に節約できます。

3. Docker-composeはまだ学ぶ必要がある

参考URL:

https://mp.weixin.qq.com/s/KXUm2ydAgymaNzHDiMlg0g

権限不足の落とし穴

https://blog.csdn.net/weixin_41598660/article/details/104034179

これで、docker compose helloworld の入門に関するこの記事は終了です。docker compose helloworld の入門に関する詳細については、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Docker-compose におけるdepends_on 順序問題を解決する方法についての簡単な説明
  • docker-compose で Jenkins をインストールする際の実践的なメモ
  • Docker Compose のインストールと使用手順
  • Docker Compose のサイドカーモードの詳細な説明

<<:  Mysql データベースのマスタースレーブ同期構成

>>:  Firefox または IE でスパン幅が決定されない場合の解決策

推薦する

Vue のスロットリング関数使用時の落とし穴ガイド

序文一般的なビジネス シナリオでは、検索ボックスへの入力が完了した後、検索データを取得するために関連...

nginx-naxsi ホワイトリストルールの詳細な説明

ホワイトリストルールの構文:基本ルール wl:ID [否定] [mz:[$URL:target_ur...

Docker で ElasticSearch をデプロイする方法

1. ElasticSearch とは何ですか? Elasticsearch も Java で開発さ...

Win10 は Tsinghua ソースを使用して pytorch-GPU バージョンをすばやくインストールします (推奨)

Cudaがインストールされているかどうかを確認してくださいアナコンダプロンプトに入力nvcc -V...

vue cli で env を使用するガイド

目次序文紹介-公式設定例序文vueCli を使用してプロジェクトを開発したことのある方は、少しがっか...

ルートパスワードを変更するための MySQL 設定、MySQL サーバー接続、MySQL 共通コマンド図

1. ルートパスワードの設定と変更mysql が起動しているかどうかを確認します。起動していない場合...

ウェブページ制作TDは隠し表示もオーバーフロー可能

おそらく、この記事にこのようなタイトルを付けると、誰かがこう尋ねるでしょう。「なぜまだテーブルに注目...

Gitlab実践チュートリアルでは、関連する設定操作にgit configを使用します。

この記事では、実際に発生した問題をもとに、git の設定に関する内容を紹介します。コマンド: git...

デザインリファレンス 美しく独創的なブログデザイン

以下にリストされているすべてのブログはオリジナルであり、独自にデザインされています。これらは、他者が...

メタタグを簡単に説明すると

META タグは、一般的に タグと呼ばれ、HTML Web ページのソース コード内の重要な HTM...

HTML 9グリッドレイアウトの実装方法

ウェブサイトのレイアウトの多様化は、当社のフロントエンドの得意分野です。最近、UC ブラウザのデフォ...

Vueは遅延読み込みによりページの応答速度を向上

目次概要遅延読み込みとは何ですか?最適化を開始するビジネスモジュールを分割する遅延読み込みルート構成...

JavaScript のシングルトン デザイン パターン

目次1. デザインパターンとは何ですか? 2. デザインパターンの5つの設計原則(SOLID) 3....

Ubuntu 18.04 に Nvidia グラフィック カード ドライバーをインストールするチュートリアル (画像とテキスト付き)

0. 事前準備BIOS でセキュア ブートを無効にします。無効にしないと、サードパーティ ソースを...