差分
このページの2つのバージョン間の差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
| Docker:WordPress:環境構築 [2023/05/13 21:31] – 削除 - 外部編集 (Unknown date) 127.0.0.1 | Docker:WordPress:環境構築 [2025/04/12 05:15] (現在) – 外部編集 127.0.0.1 | ||
|---|---|---|---|
| 行 1: | 行 1: | ||
| + | # 環境構築 | ||
| + | |||
| + | |||
| + | 参考: | ||
| + | |||
| + | - [Dockerを使ってサクッとHTTPS対応WordPress環境を構築する | 気さくなエンジニ屋](https:// | ||
| + | - [Apacheでマルチドメイン証明書で複数のSSLサイトを構成する](https:// | ||
| + | - [proxies - Reverse proxy and auto_complete with mixed content - Drupal Answers](https:// | ||
| + | |||
| + | ##### 環境 | ||
| + | |||
| + | - CentOS Stream 9 (ホスト環境) | ||
| + | - ホストに Apache 2.4.53をインストール済み | ||
| + | - SSL証明書として Let's Encrypt を利用 | ||
| + | - ホストに対してhttps通信が可能 | ||
| + | - ホストのグローバルIPアドレスに関連付けされたドメイン名を取得済み | ||
| + | - Docker 20.10.21 がインストール済み | ||
| + | |||
| + | ##### 構成 | ||
| + | |||
| + | ``` | ||
| + | ---> | ||
| + | ``` | ||
| + | |||
| + | ##### 方針 | ||
| + | |||
| + | WordPress用に新しくサブドメインを登録する。 | ||
| + | |||
| + | そのサブドメインにアクセスしてきたら、Apacheに設定したリバースプロキシでWordPressコンテナに通信を転送する。 | ||
| + | |||
| + | また、SSL証明書はホスト上のApacheにて設定する。 | ||
| + | |||
| + | ##### サブドメイン登録 | ||
| + | |||
| + | このページに書かれている方法でサブドメインを登録する。[[ネットワーク: | ||
| + | |||
| + | 以下では「abc.example.com」を例に記載する。 | ||
| + | |||
| + | ##### SSL証明書の発行 | ||
| + | |||
| + | 下記のコマンドを実行してSSL証明書を発行する。 | ||
| + | |||
| + | ``` | ||
| + | $ certbot certonly --webroot -w < | ||
| + | ``` | ||
| + | |||
| + | ##### Apacheの設定 | ||
| + | |||
| + | 「/ | ||
| + | |||
| + | ``` | ||
| + | < | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | </ | ||
| + | |||
| + | ※1. この設定がないと、混在コンテンツとなりjavascriptやcss等が正常に読み込まれない | ||
| + | ``` | ||
| + | |||
| + | 設定ファイルを編集後、下記のApacheを再起動する。 | ||
| + | |||
| + | ``` | ||
| + | $ sudo systemctl restart httpd | ||
| + | ``` | ||
| + | |||
| + | ##### docker-compose.yml の作成 | ||
| + | |||
| + | 任意のディレクトリで下記内容の「docker-compose.yml」を作成する。 | ||
| + | |||
| + | ``` | ||
| + | version: ' | ||
| + | services: | ||
| + | wordpress: | ||
| + | image: wordpress: | ||
| + | container_name: | ||
| + | ports: | ||
| + | - 8082:80 | ||
| + | volumes: | ||
| + | - ./ | ||
| + | environment: | ||
| + | WORDPRESS_DB_HOST: | ||
| + | WORDPRESS_DB_USER: | ||
| + | WORDPRESS_DB_PASSWORD: | ||
| + | WORDPRESS_DB_NAME: | ||
| + | depends_on: | ||
| + | - wordpress-db | ||
| + | restart: always | ||
| + | |||
| + | wordpress-db: | ||
| + | image: mysql:8.0 | ||
| + | container_name: | ||
| + | ports: | ||
| + | - 3308:3306 | ||
| + | environment: | ||
| + | TZ: Asia/Tokyo | ||
| + | MYSQL_ROOT_PASSWORD: | ||
| + | MYSQL_DATABASE: | ||
| + | MYSQL_USER: < | ||
| + | MYSQL_PASSWORD: | ||
| + | volumes: | ||
| + | - ./ | ||
| + | command: mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci | ||
| + | restart: always | ||
| + | ``` | ||
| + | |||
| + | ##### コンテナ作成 | ||
| + | |||
| + | ``` | ||
| + | $ docker-compose up -d | ||
| + | ``` | ||
| + | |||
| + | コマンド実行後、WordPress と MySQL の接続に数十秒かかる。 | ||
| + | |||
| + | その後、%%「https:// | ||
| + | |||