アンドロイド

CentOS 7でDocker Composeをインストールして使用する方法

Docker installation on CentOS7

Docker installation on CentOS7

目次:

Anonim

Docker Composeは、マルチコンテナDockerアプリケーションを定義および実行できるツールです。

Composeでは、アプリケーションのサービス、ネットワーク、およびボリュームを単一のYAMLファイルで定義し、単一のコマンドでアプリケーションをスピンします。

Composeは、単一ホストアプリケーションの展開、自動テスト、ローカル開発など、さまざまな目的に使用できます。

このチュートリアルでは、CentOS 7にDocker Composeの最新バージョンをインストールする方法を説明します。基本的なDocker Composeの概念とコマンドについても説明します。

前提条件

このチュートリアルを続行する前に、次の前提条件を満たしていることを確認してください。

  • sudo権限を持つユーザーとしてログインします。CentOS7システムにDockerをインストールします。

CentOSにDocker Composeをインストールする

CentOS 7にDocker Composeをインストールする推奨方法は、DockerのGitHubリポジトリからComposeバイナリをダウンロードすることです。

この記事を書いている時点では、Docker Composeの最新の安定バージョンはバージョン 1.23.1 です。 Composeバイナリをダウンロードする前に、GitHubのComposeリポジトリリリースページにアクセスし、ダウンロード可能な新しいバージョンがあるかどうかを確認してください。

次の手順を実行して、CentOS 7にDocker Composeをインストールします。

  1. 次の curl コマンドを使用して、Docker Composeバイナリを /usr/local/bin ディレクトリにダウンロードすることから始めます。

    sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

    ダウンロードが完了したら、次を入力してバイナリ実行可能ファイルを作成します。

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

    インストールを確認するには、次のコマンドを入力して構成バージョンを印刷します。

    docker-compose --version

    出力は次のようになります。

    docker-compose version 1.23.1, build b02f1306

Docker Composeを使い始める

このセクションでは、Docker Composeを使用して、CentOS 7マシンでWordPressスタックを実行する方法を示します。

プロジェクトの新しいディレクトリを作成し、そこに移動することから始めます。

mkdir my_app && cd my_app

次に、プロジェクトディレクトリ内に docker-compose.yml という名前のファイルを作成します。

nano docker-compose.yml

次のコンテンツを貼り付けます。

docker-compose.yml

version: '3.3' services: db: image: mysql:5.7 restart: always volumes: - db_data:/var/lib/mysql environment: MYSQL_ROOT_PASSWORD: password MYSQL_DATABASE: wordpress wordpress: image: wordpress restart: always volumes: -./wp_data:/var/www/html ports: - "8080:80" environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_NAME: wordpress WORDPRESS_DB_USER: root WORDPRESS_DB_PASSWORD: password depends_on: - db volumes: db_data: wp_data:

コードを行ごとに分析しましょう。

最初の行は、作成ファイルのバージョンを指定します。 特定のDockerリリースをサポートするComposeファイル形式にはいくつかの異なるバージョンがあります。

次に、 db wordpress 2つのサービスを定義しています。 各サービスは1つのイメージを実行し、docker-composeの実行時に個別のコンテナーを作成します。

db サービス:

  • mysql:5.7 イメージを使用します。 システムにイメージが存在しない場合、ComposeはDocker Hubパブリックリポジトリからイメージをプルします。コンテナに常に再起動するように指示する、 always 再起動するポリシーを使用します。名前付きボリューム db_data を作成して、データベースを永続化します。 mysql:5.7 イメージ。

wordpress サービス:

  • wordpress 画像を使用します。 システムにイメージが存在しない場合、ComposeはDocker Hubパブリックリポジトリからイメージをプルします。 always 再起動するようコンテナに指示する、 always 再起動ポリシーを使用します。ホストの wp_data ディレクトリを /var/lib/mysql 内に wp_data します。コンテナ:コンテナの公開ポート80をホストマシンのポート8080に depends_on ます。 wordpress イメージの環境変数を定義します depends_on 命令は、2つのサービス間の依存関係を定義します。 この例では、 db wordpress 前に開始されます。

プロジェクトディレクトリから、次のコマンドを使用してWordPressアプリケーションを起動します。

docker-compose up

出力は次のようになります。

… wordpress_1 | AH00163: Apache/2.4.25 (Debian) PHP/7.2.10 configured -- resuming normal operations wordpress_1 | AH00094: Command line: 'apache2 -D FOREGROUND'

Composeは両方のイメージをプルし、2つのコンテナーを開始して、プロジェクトディレクトリに wp_data ディレクトリを作成します。

ブラウザを開き、 http://0.0.0.0:8080/ /と入力すると、Wordpressのインストール画面が表示されます。

この時点で、WordPressアプリケーションが起動して実行され、テーマまたはプラグインで作業を開始できます。

作成を停止するには、 CTRL+C 押します。 環境変数作成モードをデタッチモードで開始する場合は、 -d フラグを使用します。

docker-compose up -d

実行中のサービスを確認するには、 ps オプションを使用します。

docker-compose ps

Name Command State Ports ---------------------------------------------------------------------------------- my_app_db_1 docker-entrypoint.sh mysqld Up 3306/tcp, 33060/tcp my_app_wordpress_1 docker-entrypoint.sh apach… Up 0.0.0.0:8080->80/tcp

Composeをデタッチモードで実行してサービスを停止する場合:

docker-compose stop

コンテナを完全に削除するには、 down オプションを使用 down ます。

docker-compose down

--volumes スイッチを渡すと、データボリュームも削除されます。

docker-compose down --volumes

Docker Composeのアンインストール

sudo rm /usr/local/bin/docker-compose

結論

CentOS 7にDocker Composeをインストールして使用する方法を学習しました。

ドッカーセンター