ホームページ  >  記事  >  CMS チュートリアル  >  Docker Swarm を使用して WordPress を構築する方法

Docker Swarm を使用して WordPress を構築する方法

藏色散人
藏色散人転載
2021-04-20 14:14:141779ブラウズ

WordPress の次のチュートリアル コラムでは、Docker Swarm を使用して WordPress を構築する方法を紹介します。

Docker Swarm を使用して WordPress を構築する方法

Docker Swarm を使用して WordPress を構築する
原因

私はかつて

Vultr で WordPress を構築しました。しかし、よく知られた理由により、この場所へのアクセスはますます遅くなってきています。その後、私は新浪雲を選びました。新浪雲は確かに安くてとても良いですが、登録が必要で、コメント機能を去勢する必要があるかもしれません。よく考えたら、それは忘れて、香港のホストを見つけて構築したほうが良いかもしれませんワードプレス。

ホストの購入

ここで私が選んだのは Alibaba Cloud の軽量アプリケーション サーバーで、このホストの利点は安価で十分であることです。

たとえば、私が選んだ香港のホストは月額わずか 24 元で、1 コアと 1 GB のメモリ、ネットワーク速度 30Mbps、ディスク容量 25GB、月間トラフィック 1TB を備えています。

構成は以下の通りです


Docker Swarm を使用して WordPress を構築する方法

docker環境の初期化

インストールする機能がありますが
wordpress ですが、構成が古すぎるためお勧めしません
最終的には

ubuntu18.04システムを選択しました。dockerをインストールして直接初期化できます。次のコマンドを使用しますdocker swarm

curl -o- -L https://gist.githubusercontent.com/hangox/e679464f35dc2a78920e6249a21d7958/raw/c5541e38979dca1e3e1e9704ad171ed2f0556fa1/ubunut-install-docker.sh | bash

docker-composeの書き込み

構成の概要

version: '3.7'

services:
  caddy:
    image: abiosoft/caddy
    ports:
      - 80:80
      - 443:443
    environment:
      - ACME_AGREE=true
      - TZ=Asia/Shanghai
    volumes:
      - caddy:/root/.caddy
      - wp-src:/usr/src/wordpress
    configs:
      - source: wp_caddy
        target: /etc/Caddyfile
  app:
    image: wordpress:5.4.1-php7.2-fpm
    environment:
      TZ: Asia/Shanghai
      WORDPRESS_DB_HOST: wp_db:3306
      WORDPRESS_DB_USER: root
      WORDPRESS_DB_PASSWORD: yourpassword
      WORDPRESS_DB_NAME: wordpress
    depends_on:
      - db
    volumes:
      - wordpress:/var/www/html
      - wp-src:/usr/src/wordpress
  db:
    image: mysql:8
    environment:
      TZ: Asia/Shanghai
      MYSQL_ROOT_PASSWORD: yourpassword
      MYSQL_DATABASE: wordpress
    command: --default-authentication-plugin=mysql_native_password
    volumes:
      - db:/var/lib/mysql

volumes:
  wordpress:
  db:
  caddy:
  wp-src:
configs:
  wp_caddy:
    external: true

構成分析

caddy

リバース プロキシとして使用され、https 証明書の適用を考慮しています。構成は次のとおりです

https://47log.com  https://www.47log.com  {
    root /usr/src/wordpress
    gzip
    fastcgi / wp_app:9000 php
    rewrite {
        if {path} not_match ^\/wp-admin
        to {path} {path}/ /index.php?_url={uri}
    }
    log stdout
    errors stderr
}
ここでは、 docker swarm の config 関数を使用して、この設定の

wp_caddy に設定を直接書き込みました。

db

ここでは wordpress でサポートされている Mysql8 が使用されており、パフォーマンスが向上するはずです。


commmand を追加する必要があることに注意してください command: --default-authentication-plugin=mysql_native_password そうしないと、パスワード認証を実行する方法がありません。これを追加するのを忘れてしまい、しばらく苦労しました。

app

接続方法に注意してくださいDocker スタックを使用してデプロイする場合、デプロイメントの名前は何ですか? 名前のプレフィックスを追加する必要がありますデータベース接続に接続します。たとえば、これは
docker stackdeploy -c docker-compose.yml wp で、docker ネットワーク内のデータベースのホストは wp_db です。スタック名が wordpress の場合は、それに応じて wordpress_db に変更する必要があります。

ボリュームの設定に注意してください
- wordpress:/var/www/html これは設定する必要があります。前回はこれを設定しませんでしたコンテナ、テーマが消えてしまいました。

docker stack を使用してデプロイします

1 行のコマンド

docker stackdeploy -c docker-compose.yml wpしばらくすると wordpress に入ることができます

docker swarm を使用する理由。 portainer のおかげで、docker-swarm は porttainer に接続された後、フル機能の構成機能を持つことができます。

以上がDocker Swarm を使用して WordPress を構築する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。