LoginSignup
2
2

More than 1 year has passed since last update.

他人からもらったWordPressファイルとSQLファイルを元にローカル環境で開発したい (Dockerで環境構築)

Last updated at Posted at 2022-03-25

他人が作ったWordPressファイルとSQLファイルを元にローカル環境で開発したい

DockerでWordPressローカル環境を作る
そして大容量のSQLファイルのインポートもしたいので手っ取り早いphpmyadminも一緒に入れる
ハマりポイントが結構あったので備忘録

docker-compose.yml等を用意

最低限のものを用意する
空のディレクトリに

  • docker-comose.yml
  • phpmyadminディレクトリ
  • (↑の中に)phpmyadmin-misc.ini
    を用意
├ docker-compose.yml
└ phpmyadmin
  └ phpmyadmin-misc.ini
docker-compose.yml
version: "3"
services:
  db:
    image: mysql:5.7
    platform: linux/x86_64
    container_name: "wp-test-db"
    volumes:
      - "db-data:/var/lib/mysql"
    environment:
      MYSQL_ROOT_PASSWORD: pass
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
  wordpress:
    image: wordpress:latest
    container_name: "wp-test"
    volumes:
      - "$PWD/wordpress:/var/www/html"
      - "$PWD/.docker/backup:/tmp/backup"
      - "$PWD/.docker/log:/tmp/log"
    ports:
      - "8003:80"
    depends_on:
      - db
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: wordpress
      WORDPRESS_DB_NAME: wordpress
      
  phpmyadmin:
    image: phpmyadmin/phpmyadmin:latest
    container_name: wp-test-phpmyadmin
    depends_on:
      - db
    ports:
      - 90:80
    volumes: 
      - $PWD/phpmyadmin/phpmyadmin-misc.ini:/usr/local/etc/php/conf.d/phpmyadmin-misc.ini
volumes:
  db-data:
networks:
  wp-test_network:

ポート番号とかは適宜で。

phpmyadminで大容量のSQLファイルをインポートするためiniファイルも追加(デフォルトは2MBまでのファイルまで)

phpmyadmin-misc.ini
allow_url_fopen = Off
max_execution_time = 300
max_input_vars=10000
memory_limit = 64M
post_max_size = 64M
upload_max_filesize = 64M

コンテナを立ち上げWordPressサイトとphpmyadminにアクセス

$ docker-compose up -d

すると
.dockerディレクトリとwordpressディレクトリができています

全体のディレクトリ構造

├ .docker
  └ backup
  └ log
├ docker-compose.yml
└ phpmyadmin
  └ phpmyadmin-misc.ini
└ wordpress
  └ .htaccess
  └ index.php
     〜〜その他wordpressファイル

これで
http://localhost:8003/ で wordpressが起動
http://localhost:90/ で phpmyadminが起動
できるようになる

自作テーマを入れ,SQLファイルをインポート

先程のビルドでできたwordpressディレクトリ内のthemesディレクトリ内に自作テーマを入れる
WordPress管理画面からテーマを適用しておく

phpmyadminにアクセスする
(ユーザー名はroot, パスワードはpass)
データベースを新規作成する(例としてwp-test)

スクリーンショット 2022-03-25 17.38.48.png

インポートメニューからSQLファイルを指定してインポート

インポート後は必要なテーブルは更新しておいてください
(wp-optionテーブルのsiteurlとhomeなど)

phpmyadminを使わずmysqlコンテナに入ってSQLファイルをインポートしてもいいですけどね

使用するDBを変更する

wordpressディレクトリ内のwp-configで設定する

wp-config.php
/** The name of the database for WordPress */
define( 'DB_NAME', getenv_docker('WORDPRESS_DB_NAME', 'wordpress') );

/** Database username */
define( 'DB_USER', getenv_docker('WORDPRESS_DB_USER', 'exsername') );

/** Database password */
define( 'DB_PASSWORD', getenv_docker('WORDPRESS_DB_PASSWORD', 'example password') );

これを変更する

wp-config.php
/** The name of the database for WordPress */
define( 'DB_NAME', 'wp-test' );

/** Database username */
define( 'DB_USER', 'root' );

/** Database password */
define( 'DB_PASSWORD', 'pass' );

※もしテーブル接頭辞も変えていたら変更

$table_prefix = 'wp_';

これでSQLファイルをインポートしたwp-testテーブルを参照できるようになる
(wordpressの管理画面からパーマリンクも忘れずに設定する)

プラグインファイルとかも入れておく

http://localhost:8003/
にアクセスすると表示できているはず

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2