WordPress環境をローカルにdockerを使って構築する方法

WordPress環境をローカルにdockerを使って構築する方法 開発
スポンサーリンク

ローカル環境構築のポイント

  • dockerを使ってローカル環境を構築する。
  • 公式のWordpressクイックスタートを参考に。
  • docker imageはwordpress公式が出しているものを使う。
    • php7.4とapacheを使いたいので、Tagは「5.8.2-apache」を使う。※2021/11/26時点の最新バージョン
  • DBはMySQLを使う。
  • バージョンは、wordpressの動作要件に従いMySQL バージョン5系を採用。
  • モジュールのバージョン管理はGitを使う。

ローカル環境構築の流れとしては

  1. WordPressの公式からモジュールをダウンロード
  2. docker-composeを使ってコンテナを立ち上げ
  3. コンテナに接続

となる。

WordPressのダウンロードとdockerコンテナの立ち上げ

  1. WordPressの公式から5.8.2をダウンロード※最新版が5.8.2じゃ無くなっていたら、「すべてのリリース」からzipファイルをダウンロード。
  2. ダウンロードしたwordpressを作業用のworkspaceに展開。今回はworkspaceフォルダ「blog」を作成してその中に展開する。
  3. wordpressと同階層に、docker-compose.ymlファイルを作成しコンテナ情報を記述する。
    version: '3'
    
    services:
      db:
        image: mysql:5.7
        container_name: blog_db
        environment:
          MYSQL_ROOT_PASSWORD: somewordpress
          MYSQL_DATABASE: wordpress
          MYSQL_USER: wordpress
          MYSQL_PASSWORD: wordpress
          TZ: Asia/Tokyo
        ports:
          - '3307:3306'
        volumes:
          - ./.data/db:/var/lib/mysql
    
      wordpress:
        image: wordpress:5.8.2-apache
        container_name: blog
        tty: true
        depends_on:
          - db
        ports:
          - "8000:80"
        volumes:
          - .:/var/www/html
        restart: always
        environment:
          WORDPRESS_DB_HOST: db:3306
          WORDPRESS_DB_USER: wordpress
          WORDPRESS_DB_PASSWORD: wordpress
    
  4. ターミナルでdocker-compose.ymlの階層まで移動し、コマンド docker-compose up を実行してコンテナを立ち上げ。
  5. 立ち上がったらlocalhost:8000にアクセスするとインストーラーが実行されるので各項目を入力しインストールを実行する。正常にインストールが完了すると「成功しました」と表示される。
    1. インストーラーが実行されると、「wp-config.php」「.htaccess」が自動生成される。
    2. これらのファイルは環境ごとに異なる。dockerで構築すると環境変数を読み込むようなロジックが書かれている。
  6. ログインしてダッシュボードが表示されればローカル構築は完了!
  7. Git管理をするので、.gitignoreを作成してpushしておく。
    1. 環境変数などが定義されているものは.gitignoreでgit管理しないようにし、github公式で展開されているものも追加で設定。
    2. 環境変数をサーバに定義する場合は、wp-config.phpをpushしても問題ないが、今回はAWSでwp-config.phpに環境定義をするのでgit管理からは除外する。
    # 独自で追記部分
    .DS_Store
    
    .htaccess
    wp-config.php
    
    # ここからgithub公式のもの。
    # ignore everything in the root except the "wp-content" directory.
    !wp-content/
    
    # ignore everything in the "wp-content" directory, except:
    # "mu-plugins", "plugins", "themes" directory
    wp-content/*
    !wp-content/mu-plugins/
    !wp-content/plugins/
    !wp-content/themes/
    
    # ignore these plugins
    wp-content/plugins/hello.php
    
    # ignore specific themes
    wp-content/themes/twenty*/
    
    # ignore node dependency directories
    node_modules/
    
    # ignore log files and databases
    *.log
    *.sql
    *.sqlite
    

dockerで立ち上げたローカルDBにアクセス

ローカルDBのアクセス情報は、docker-compose.ymlで定義した通り、DBクライアントを使ってアクセスする。

DBアクセス情報

  • Host:127.0.0.1 # localhost
  • Username:wordpress
  • Password:wordpress
  • Database:wordpress
  • Port:3307
  • Seuuel Aceを使っていると下記のようになる
  • アクセスができたら初期構築時のテーブルが生成されていればOK。

これでローカル開発環境の構築は完了。テーマを自作する場合などはローカルで開発、Git push、の流れとなる。

スポンサーリンク

コメント

タイトルとURLをコピーしました