このチュートリアルは予定 DockerComposeを使用してDockerコンテナでWordPressインストールを実行する方法を示します。
WordPressは世界で最も人気のあるCMS(コンテンツ管理システム)であり、新しいサイトを構築する際に最も重要な考慮事項になります。これは、PHP処理を備えたMySQLデータベース上に構築されています。
ローカルのWordPressインストールのセットアップには複数の手順が必要であり、時間がかかる場合があります。通常、ローカルウェブサーバーを設定し、PHPコードを実行するようにサーバーを構成し、MySQLデータベースを設定する必要があります。
ただし、ローカルのWordPress環境をセットアップする最も簡単な方法は、Dockerでコンテナ化を使用することです。
Dockerを使い始めて、まだDockerをインストールしていない場合は、チュートリアル「UbuntuへのDockerのインストール:ステップバイステップガイド」から始めることをお勧めします。
1。 DockerComposeをインストールする
Dockerを広範囲に使用する場合、複数の異なるコンテナーの管理が面倒になります。 Docker Composeは、Dockerでマルチコンテナアプリケーションを簡単に定義して起動できるツールです。
Composeを使用すると、すべてのサービスを1つのYAMLファイルで定義でき、1つのコマンドで、すべてをスピンアップまたは破棄できます。
このチュートリアルでは、Docker Composeを使用して、分離されたコンテナー化された環境で2つのコンテナー(WordPressとMySQL)を実行します。
次に、マルチコンテナアプリケーションの管理に役立つ最新バージョンのDockerComposeをインストールする方法を紹介します。
まず、現在のリリースを確認し、必要に応じて、以下のコマンドで更新します。
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/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.29.2, build 5becea4c
Docker Composeの詳細については、公式ドキュメントを参照してください。
2。ディレクトリを準備する
wordpress
という新しいディレクトリを作成する必要があります /srv
の下 WordPressデータを格納します。このようにして、特定のデータの永続性を実現します。
sudo mkdir -p /srv/wordpress
cd /srv/wordpress/
ご存知のように、Dockerコンテナー内のデータは永続的ではありません。これは、コンテナを停止して再度実行すると、すべてのデータが失われることを意味します。内部にデータはありません。
もちろん、このチュートリアルの後半で説明するように、Dockerボリュームを追加することでこれを回避できます。
3。 YAMLファイルの作成
Docker Composeレルムでは、コンテナーの実行に必要なすべてのリソースをdocker-compose.yaml
という名前のYAMLファイルで定義する必要があります。 。
次に、Docker Composeはそのようなファイルを読み取り、Dockerデーモンと通信して、定義されたリソースを作成、構成、または破棄します。
この場合、docker-compose.yaml
ファイルには、ドッキングされたWordPressセットアップのサービス定義が含まれます。
さらに、Docker Composeを使用すると、これらのサービスを共有ネットワークおよびボリュームとリンクできます。
それでは、新しいdocker-compose.yaml
の作成から始めましょう。 /srv/wordpress
内のファイル 選択したエディタを含むディレクトリ。この構成を入力します:
version: '3'
services:
mysql:
image: mysql:latest
restart: always
environment:
MYSQL_ROOT_PASSWORD: my_password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress_user
MYSQL_PASSWORD: wordpress_password
volumes:
- mysql_data:/var/lib/mysql
wordpress:
image: wordpress:latest
depends_on:
- mysql
ports:
- 8080:80
restart: always
environment:
WORDPRESS_DB_HOST: mysql:3306
WORDPRESS_DB_USER: wordpress_user
WORDPRESS_DB_PASSWORD: wordpress_password
volumes:
- ./wp-content:/var/www/html/wp-content
volumes:
mysql_data:
ここで少し説明します:
- 2つのサービスを定義します –
mysql
およびwordpress
、自動的に相互にリンクされます。 - Dockerの画像を使用します 、使用するMySQLとWordPressのバージョンを決定します。この場合、彼らの最新 バージョン。
- MySQL環境 :WordPressはこれらの環境変数を使用してMySQLコンテナに接続します。
- WordPress環境 :WordPressコンテナを実行するには、データベース接続の詳細を設定する必要があります。
- WordPressイメージは、ポートで実行されるApacheに基づいています
80
デフォルトでは。デフォルトのApacheポートをポート8080
にマッピングします ローカルコンピュータの。 - mysql_data :このデータベースに流入するデータは、指定されたボリューム
mysql_data
に永続化されます コンテナを削除しても、データはマシン上に残り、新しいコンテナ内に再度マウントできるようになります。
さらに、volumes
wordpress
の下のパラメータ Dockerにwp-content
を表示するように指示するのは ローカルファイルシステムのディレクトリ。
これで、wp-content
などのWordPressサイトの一部を永続的に保存できるようになりました。 ディレクトリ。 wp-content
ユーザーが提供したすべてのコンテンツが含まれます。つまり、基本的に、サイトにアップロードできるものはすべてここに表示されます。
ただし、データベースとwp-content
の両方がある限り フォルダを使用すると、他のすべてが失われた場合でも、いつでもサイトを元に戻すことができます。
4。 DockerComposeでWordPressを実行する
これで、Dockerコマンドを実行してローカル環境を構築する準備が整いました。まだwordpress
にいることを確認してください ディレクトリ。次のコマンドを実行します:
sudo docker-compose up -d
コマンドはスクリプトの実行を開始し、DockerがMySQLおよびWordPressイメージをプルしている間、ターミナルにさまざまな「ダウンロード中」および「待機中」のメッセージが表示されるはずです。実行には少し時間がかかります。
ローカルファイルシステムを注意深く監視すると、/srv/wordpress/wp-content
が表示されます。 Dockerイメージがプルされた後、フォルダーが作成され、ファイルとフォルダーで埋められます。
MySQLコンテナとWordPressコンテナを使用したWordPressのインストールは成功しました。
5。 WordPressのインストールにアクセスする
最後に、コンテナを実行した状態でWordPressWebインターフェイスを介してインストールを完了することができます。 Webブラウザーで、http://localhost:8080
に移動します またはhttp://your_ip_address:8080
。
ifconfigコマンドを使用してIPアドレスを確認する必要がある場合があります。
言語選択ページがあなたを迎えます。言語を選択して[続行]をクリックします。
次の画面で必要な情報を入力し、「WordPressのインストール」をクリックします。
最後に、プロンプトが表示されたら、Login
をクリックします 。
標準のWordPressログイン画面が表示されます。認証に成功したら、WordPressの使用を開始できます。
追加のDocker作成オプション
まず、/srv/wordpress
にいることを確認します ディレクトリ。
ステータスを表示するには Dockerアプリケーションの場合は、次のコマンドを実行します。
sudo docker-compose ps
停止できます 次のコマンドを使用して、実行中のすべてのコンテナ:
sudo docker-compose stop
既存のコンテナを起動する docker-compose up
で作成されたもの :
sudo docker-compose start
以下に示すコマンドは、停止して削除します コンテナとすべてのネットワーク:
sudo docker-compose down
結論
Docker Composeの背後にある概念を紹介しました。これで、単純なマルチコンテナーアプリケーションでも定義できるようになります。
このチュートリアルでは、DockerComposeを使用してDockerでWordPressをインストールしました。これでWordPressが稼働しています。
このガイドをお楽しみいただけたでしょうか。 Happy Dockering!