LoginSignup
8

More than 5 years have passed since last update.

LaradockでMySQL5.5を使う(Docker + Laravel)

Last updated at Posted at 2017-07-10

環境

  • macOS Sierra
  • Docker 17.06.0-ce-mac18
  • Apache 2.4
  • CentOS 7.0
  • MySQL 5.5
  • Laravel 5.0

前提条件

Lardockの基本的な導入手順を踏み、docker-compose up -dコマンドでコンテナを起動する直前までの工程が終了していること

すでに起動してしまっている場合、Laradockで使用するMySQLのコンテナとイメージを一度削除してください。

コンテナを停止、ネットワークとともに削除するコマンドは下記のとおりです。

$ docker-compose down

イメージは削除されないので、

$ docker ls -a

で全てのイメージを表示し、laradockを導入してビルドしたMySQLのイメージを削除します。
laradock_mysqlとmysql 5.7があります。

導入手順

Dockerfileを書き換える

laradock/mysql配下のDockerfileを書き換え、DockerHubからpullしてくるMySQLイメージのバージョンを変更します。


-  FROM mysql:5.7
+  FROM mysql:5.5

これだけです。

イメージをbuildしてコンテナを起動する

docker-compose up コマンドでlaradock/mysql/配下のDockerfileからMySQLのイメージをbuildし、コンテナを起動します。

オプションに-dをつけて実行すると、コンテナをバックグラウンドで起動し(デタッチドモード)、実行したままにできます。

また、今回はMySQLののみイメージをビルドするように指定します。

$ docker-compose up -d mysql

5.5-fpmのタグがついたphpのイメージと、それをもとにしたlaradock_php-fpmというイメージがビルドされていることを確認します。

$ docker image ls

laradock_mysql       latest              6104906b149d        31 hours ago        256MB

mysql                5.5                 17e9a1fe381e        2 weeks ago         256MB

laradock_mysql コンテナ内のPHPのバージョンが5.5になっていることを確認します。

オプションで--rmをつけると、対象のコンテナを実行後に削除してくれます。停止しているコンテナに入ることなくバージョン確認などができるので便利です。

コンテナがデタッチドモードで起動されている場合は無視されるので、--rmオプションはなくても同じ挙動になります。

$ docker-compose run --rm mysql mysql --version 

mysql  Ver 14.14 Distrib 5.5.56, for linux-glibc2.5 (x86_64) using readline 5.1

Laradock Tips

デフォルトではストレージシステムのファイル群が~/.laradock/dataになっているので、ローカル環境のlaradockディレクトリ内に同期しておくと便利です。

$ cd laradock

$ mkdir .laradock/data

$ docker-compose up -d // コンテナ内のファイルがローカル環境に同期される

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
What you can do with signing up
8