Hello はてなブログ ~WordPress on Dockerの備忘録~
はじめまして, Igarashiです.
最近Qiita(https://qiita.com/Dai7Igarashi)をはじめたんですが, 何でしょう, Qiitaって"綺麗に書かなきゃ"って思ってしまうんですよね. 構成がしっかりしているからでしょうか...
で, なかなか更新できずじまい. コードとか書いて備忘録書こうと思っても, サクッと書けないんですよね^^;
ということで備忘録ははてなブログ, 清書はQiitaって感じで使い分けようと思います!(なので読みにくいかもしれませんが悪しからず...汗)
公開済みのWordPressをローカルで開発
経緯
友達がWordPressでサイトを構築したんですが, その一部を作ることになりました. オンラインで作業してもいいのですが
- jsとか各種ファイルの書き換えが大変そう
- ミスしたら復元が大変そう
ということがあったので, ローカルでWordPressの開発環境を作ることにしました.
実行環境
docker-composeの設定
WordPressとMySQLのイメージ取得とコンテナ起動
Docker for Mac(https://docs.docker.com/)をインストールします.
作業フォルダを作成してそこに移動します. そのフォルダ直下にdocker-compose.ymlを以下の内容で保存.
基本の書き方は以下3つにあり.
1. Quickstart: Compose and WordPress | Docker Documentation
このdocker-compose.ymlがあるフォルダでdocker-compose up -dコマンド実行.
因みにdbの中身ごと破棄するにはdocker-compose down --volumes
するとDockerコンテナ上にWordPressとMySQLがインストールされ, 起動完了.
起動するとコンテナとマウントしたホスト側のディレクトリ(./)に新規インストールされたWordPressの各種データが保存される.
※ 後に登場するwp-config.phpとWORDPRESS_DB_NAMEで結構つまずきました(~_~;)
phpmyadminからデータベースのデータ取得
友達はロリポップを使用していたので, ロリポップの管理画面にログインしてphpmyadminに入りました. この辺りは以下を参考に. そして**.sqlをダウンロード.
FileZillaでサーバー上のデータをダウンロード
以下を参考にダウンロード.
ダウンロードしたmysqlデータの書き換え
WordPressは画面遷移(ルーティング)の情報をmysql側で保持しているらしいです. なのでダウンロードしたファイルではhttp://www.123456/Aboutみたいな記述になっています. これをローカルホストで動かすにはhttp://localhost:8000/Aboutで置換します. (今回はports: - "8000:80"でホスト側のポートを8000にしたのでこう書く.)
テキストエディタとかで検索->全て置換すれば一瞬です.
書き換えたデータはmysqlのコンテナとマウントしたフォルダ(./db_data/)以下に設置します.
ダウンロードしたWordPressデータで置き換え
FileZillaで落としたデータを全て先ほどインストールされたWordPressデータと入れ替えます.
wp-config.phpの書き換え
仕上げです. wp-config.phpのデータベースの記述部分を以下のように書き換えます.
docker-compose.ymlのWORDPRESS_DB_NAMEはデフォルトでwordpressになるので, ymlのこれとconfigのDB_NAMEは一致させるように.
ログイン
ブラウザでlocalhost:8000/admin/と打てばログイン画面になるはずです. いつも通りのIDとパスワードで入れます. お疲れ様でした.
まとめ
とりあえずローカルで本番環境を再現することが目的だったので, 細かな設定とかは考えていません. 次はサイトのphpとかjsとかいじったことを備忘録として残します!!(Qiitaのようにはならないぞ💪)