wordpressをdockerとnginxで構築する手順
WordPressをDockerとNginxで構築する手順は以下の通りです:
1. DockerとDocker Composeをインストールします。
Dockerは公式サイトから、Docker ComposeはGitHubからインストールできます。
2. WordPress用のディレクトリ構造を作成します。
例えば、wordpress-dockerというディレクトリを作成します。
3. wordpress-dockerディレクトリ内に、docker-compose.ymlという名前のファイルを作成します。
4. docker-compose.ymlファイルに、WordPress、MySQL、Nginxの各サービスの設定を記述します。
以下は、サンプルのdocker-compose.ymlファイルです。
mysqlは古いバージョンにはなりますが、5.7でやります。
version: '3' services: db: image: mysql:5.7 # mysqlのバージョンは適宜変えてください volumes: - db_data:/var/lib/mysql restart: always environment: MYSQL_ROOT_PASSWORD: examplepassword MYSQL_DATABASE: wordpress MYSQL_USER: wordpress MYSQL_PASSWORD: examplepassword wordpress: depends_on: - db image: wordpress:latest volumes: - ./wordpress:/var/www/html restart: always environment: WORDPRESS_DB_HOST: db:3306 WORDPRESS_DB_USER: wordpress WORDPRESS_DB_PASSWORD: examplepassword WORDPRESS_DB_NAME: wordpress ports: - "8000:80" nginx: image: nginx:latest ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/nginx.conf depends_on: - wordpress volumes: db_data:
5. wordpress-dockerディレクトリ内に、nginx.confという名前のNginxの設定ファイルを作成します。
以下は、サンプルのnginx.confファイルです:
worker_processes 1; events { worker_connections 1024; } http { server { listen 80; server_name localhost; location / { proxy_pass http://wordpress:80; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } }
6. コマンドラインでwordpress-dockerディレクトリに移動し、以下のコマンドを実行してDockerコンテナを起動します:
docker-compose up -d
これでWordPressがDockerとNginxで構築され、localhost:8000でアクセスできるようになります。
以下の画面が表示されます。
とても簡単ですね。
docker-compose upで起動したコンテナを停止
Docker Composeで起動したコンテナを停止するには、docker-compose downコマンドを使用します。
以下がその方法です:
1. コマンドラインでdocker-compose.ymlファイルがあるディレクトリに移動します。
2. 以下のコマンドを実行して、起動しているコンテナを停止します:
docker-compose down
これにより、Docker Composeで定義されたすべてのサービスが停止され、関連するネットワークとコンテナが削除されます。