広告

Mac M2 dockerでWordPressを動かす

Mac
この記事は約5分で読めます。

macで仮想環境を作るにはいくつか方法がありますが、dockerで作ってみます。

環境

MacBook pro M2

Docker Desktopをインストール済み

docker-compose.ymlの作成

書類フォルダの下に任意のフォルダを用意して、フォルダの中にdocker-compose.ymlを作成します。

OneDrive(クラウドと同期しているところ)に入れると大変な目にあったので、ご注意ください!!

クラウドと同期していなければ、面倒な目にあわないと思います。

docker-compose.yml

色々な書き方があるので参考程度にしてください。

version: "3.9"

services:
  wordpress:
    container_name: wordpress
    image: wordpress:latest
    restart: always
    depends_on:
      - db
    ports:
      - 8000:80
    volumes:
      - ./src:/var/www/html
    environment:
      WORDPRESS_DB_HOST: db:3306
      WORDPRESS_DB_NAME: wordpress # DB名
      WORDPRESS_DB_USER: wordpress # DBユーザー名
      WORDPRESS_DB_PASSWORD: wordpress # DBパスワード
    networks:
      - default

  # データベース
  db:
    container_name: dbashitaka
    platform: linux/x86_64 # M1 Mac対応
    image: mysql:5.7
    restart: always
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: wordpress
      TZ: 'Asia/Tokyo'
    command: mysqld --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
    volumes:
      - ./docker/db/data:/var/lib/mysql # ローカルのdataディレクトリをマウント(ここにテーブル情報とかが格納される)
      - ./docker/db/my.cnf:/etc/mysql/conf.d/my.cnf # ローカルのmy.cnfをマウント
      - ./docker/db/sql:/docker-entrypoint-initdb.d
    networks:
      - default

  phpmyadmin:
    image: phpmyadmin:latest
    restart: always
    depends_on:
      - db
    ports:
      - 8888:80
    volumes:
      - ./docker/phpmyadmin/phpmyadmin-misc.ini:/usr/local/etc/php/conf.d/phpmyadmin-misc.ini
    networks:
      - default

volumes:
  db:

フォルダ、ファイル作成

docker-compose.ymlを配置した場所に、フォルダ、ファイルを作成します。

├── docker-compose.yml
├── docker
│   └── phpmyadmin
│        └── phpmyadmin-misc.ini
└── src(ディレクトリのみ作成→Docker起動で自動的にファイルが挿入)

phpmyadmin-misc.ini

allow_url_fopen = Off # ファイルを開く時にURLのようにして開くかどうか
max_execution_time = 600 # 処理の実行時間。
memory_limit = 64M # 処理で使用するメモリの上限値
post_max_size = 64M # POSTデータの上限サイズ
upload_max_filesize = 64M # アップロードできるファイルの上限サイズ。

ターミナルでDockerを起動する

ターミナルを起動したら、docker-compose.ymlのあるフォルダに移動します。

ユーザー名@パソコン名Pro ~ % cd /Users/{ユーザー名}/Documents/{フォルダ名} 

lsコマンドでdocker-compose.ymlがあることを確認しましょう。

ユーザー名@パソコン名Pro フォルダ名 ~ % ls

dockerを起動します

ユーザー名@パソコン名Pro フォルダ名 ~ % docker compose up -d

docker-compose と案内されているサイトもありますが、コマンドが古いのでご注意ください。

http://localhost:8000/ にブラウザでアクセス

WordPressのインストール画面が出てきたら成功です。

docker停止

dockerを停止させる場合には、下記のコマンドをターミナルで実行します。

ユーザー名@パソコン名Pro フォルダ名 ~ % docker compose stop

もし、dockerのコンテナを削除したい場合は

ユーザー名@パソコン名Pro フォルダ名 ~ % docker compose down

他にも、次のようなコマンドが使えるはずです。(Docker Desktopで操作した方が簡単かもしれません。)

ボリュームも消去

docker compose down --volumes

コンテナ、イメージ、ボリューム、ネットワークそして未定義コンテナ、全てを一括消去

docker compose down --rmi all --volumes --remove-orphans