普段Wodpress関連をローカルで開発するときには、WSL2環境でApacheを使って行っています。
しかし、訳あってdockerで動かす必要があったのでその時の備忘録です。
正直、難しいんだろうな・・・
呪文の書(dcoker-compose.yml)かけるかな・・・
と不安だったのですが、 一瞬でした。
docker-compose.yml
の書き方は後で覚える!今は開発環境作るのが先やで!という方はコピペ爆速でいけるはずです。
是非どうぞ!
環境
- WSL2
- Docker Desktop for Windows
- Wordpress最新
- MySQL
爆速を求めてるあなたに
何も気にせず次の通りにしてください。
- Dockerを起動(私はDocker Desktop for Windowsを使ってます)
- プロジェクトを置きたいディレクトリに
dcoker-compose.yml
ファイルを作成 -
docker-compose.yml
に以下をコピペdocker-compose.ymlversion: '3' services: wordpress: image: wordpress:latest ports: - "8080:80" environment: WORDPRESS_DB_HOST: db WORDPRESS_DB_USER: wordpressuser WORDPRESS_DB_PASSWORD: wordpassword WORDPRESS_DB_NAME: wordpress volumes: - ./wordpress:/var/www/html depends_on: - db networks: - wordpress-network db: image: mysql:5.7 environment: MYSQL_DATABASE: wordpress MYSQL_USER: wordpressuser MYSQL_PASSWORD: wordpassword MYSQL_RANDOM_ROOT_PASSWORD: '1' volumes: - wordpress_db_data:/var/lib/mysql networks: - wordpress-network volumes: wordpress_files: name: wordpress_files wordpress_db_data: name: wordpress_db_data networks: wordpress-network: driver: bridge my-app-network: external: true
-
docker-compose up -d
を実行 - http:localhost:8080を開く
- おしまい。
docker-compose.ymlの中身について
今回は、WordpressとMySQLの環境を作るために呪文を書いています。
大きなポイントとしては2つです。
docker-compose.ymlの詳しいことに関してはいつか記事を書きます・・・多分。
Wordpressの設定について
image
という箇所にimage: wordpress:latest
というのがあります。
これはwordpressの公式の最新のDockerイメージを使うよという意味になります。
これが優れもので爆速が実現しています。
たとえば、ローカルで開発を行う時に
- Apache(webサーバー)
- PHP
- MySQL(データベース)
というようなLAMPの環境を用意することがよくあると思います。
しかし、このイメージはこれらがもうすでに入っているんですね!
もう頭が上がらないです、超便利。
wordpressを動かすのに必要なものが最初からパッケージになっている感じなので、これ一つで解決しています。
post max size、upload max size、memory limit
の設定を変えたい時
普段は.htaccessを変えたりすると思いますが、これも簡単にできちゃいます。
-
docker-compose.ymlと同じ階層に
php.ini
を作成し次の内容を記述php.iniupload_max_filesize = 1G post_max_size = 1G memory_limit = 1G max_execution_time = 300 max_input_time = 300
-
docker-compose.ymlの設定を
volumes
に追加するdocker-compose.ymlvolumes: - ./wordpress:/var/www/html - ./php.ini:/usr/local/etc/php/conf.d/custom.ini
-
コンテナを再起動する
docker-compose down docker-compose up -d
-
設定がきちんとされているか次のコマンドで確認できる
docker-compose exec wordpress php -i | grep -E "upload_max_filesize|post_max_size|memory_limit"
これだけでいけます!
テーマのインポートなどでリミットを上げることはよくあると思うので、結構大事ですね
終わりに
今回は爆速でDockerでWordpressを動かすというのをやってみました。
docker-compose.yml
側にちょっとした工夫(wordpressをローカルに設置する)などもあるので、このファイルの説明はまた別記事で書こうと思います!