使用Docker搭建WordPress的本地开发环境
Docker真是太强大了!在创建WordPress本地开发环境时,使用Docker能够迅速构建,我来写一下。
工具的考虑
有很多选择。听说对于初学者来说,Local是推荐的。
-
- Local
簡単にWordPressのローカル環境を構築できるツール
おすすめしているサイトが多い
XAMPP(ザンプ)
MariaDB、PHP、Perl を簡単にインストールできる Apache ディストリビューション
MAMP
Apache HTTP Server、MySQL、PHPをまとめてインストールできるツール
Docker
コンテナ仮想化を用いてアプリケーションを開発・配置・実行するためのプラットフォーム
Dockerコンテナ内でWordPress開発環境を簡単に構築できる
由于我不想安装新工具,且希望在虚拟环境中进行管理,所以我选择了原本已安装在我的计算机上的Docker Desktop for Windows。
环境配置步骤
因为公式有提供教程,所以我按照教程的步骤进行操作就成功了。
虽然按照教程的方式有点不方便,所以我进行了一些修改并使用了。
前提 – Premise
-
- OS: Windows 10
- Docker Desktop for Windows バージョン4.5.1
项目的定义
-
- プロジェクト用ディレクトリを作成する
ディレクトリ名は任意
プロジェクト用ディレクトリ内に、docker-compose.yml ファイルを作成する
内容は公式のチュートリアル参照。執筆当時に公開されていた内容をコピペしたものが以下
WordPressの推奨バージョンを満たしているかを一応確認する
version: '3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
修正docker-compose.yml
尽管现有环境已经可以搭建起来,但由于存在两个问题,我已经修改了docker-compose.yml文件。
将WordPress的文件保存到本地
教程中指导查看WordPress容器中的/var/www/html目录下安装的资料,无法从本地查看资料,且删除容器会导致所有资料消失。因此,应该将WordPress的资料保存到本地。
-
- プロジェクト用ディレクトリにWordPressの資材格納用ディレクトリを作成する
今回はwordpressフォルダを作成した
docker-compose.ymlファイルのwordpressに追記する
wordpress:
volumes:
- ./wordpress:/var/www/html
使其能够连接到数据库。
按照教程正常操作时,无法从本地连接到MySQL。
因此,需要指定端口号以便连接到数据库。
- docker-compose.ymlファイルのdbに追記する
db:
ports:
- "3306:3306"
整个情况是这样的。(+修正部分在后面追加)
version: '3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
+ ports:
+ - "3306:3306"
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
+ volumes:
+ - ./wordpress:/var/www/html
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
项目建设
因为准备工作已经完成了,接下来只需要让Docker上场即可。
-
- プロジェクト用ディレクトリ上でdocker-compose up -dを実行する
不足する Docker イメージがあれば取得される
WordPressとMySQLのコンテナが作成&起動される
PS ■■■■■■■■■ > docker-compose up -d
Creating network "web_default" with the default driver
Creating volume "web_db_data" with default driver
Pulling db (mysql:5.7)...
5.7: Pulling from library/mysql
c32ce6654453: Pull complete
415d08ee031a: Pull complete
(略)
Status: Downloaded newer image for mysql:5.7
Pulling wordpress (wordpress:latest)...
latest: Pulling from library/wordpress
214ca5fb9032: Pull complete
cd813a1b2cb8: Pull complete
(略)
Status: Downloaded newer image for wordpress:latest
Creating web_db_1 ... done
Creating web_wordpress_1 ... done
确认WordPress是否启动
-
- ブラウザを開き、http://localhost:8000 にアクセス
-
- WordPressの画面が表示される
画面表示に従って言語設定、ユーザ設定を行うと、WordPressの管理画面が表示される
文献引用
-
- ツール選定
https://www.apachefriends.org/jp/index.html
https://www.mamp.info/en/windows/
チュートリアル
https://docs.docker.jp/compose/wordpress.html
WordPressの推奨バージョン確認
DockerでWordPress環境構築系の記事(大変参考になりました、ありがとうございました!)
https://zenn.dev/persona/articles/50f87da99c92af
https://qiita.com/herishiro/items/d59b30b331ef8d62be1b