◆当ページにはプロモーションが含まれています

Laravel

Laradockで環境設定するときにチェックするべき設定項目

こんにちは。どんぶラッコです。

以前、Laradockで環境構築する方法について記事にしました。

https://proglearn.com/2019/11/21/%e3%80%902019%e5%b9%b411%e6%9c%88%e3%80%91laradock%e3%81%a7laravel%e3%82%92%e6%a7%8b%e7%af%89%e3%81%99%e3%82%8b%e3%81%be%e3%81%a7%e3%81%ae%e5%85%a8%e6%89%8b%e9%a0%86/

本日は、その発展として、Laradockを設定するときに変更をチェックするべき設定について記述していきます。

.envファイルで設定を変更する箇所

私は大抵下記の項目を編集することが多いです。

- APP_CODE_PATH_HOST=../
+ APP_CODE_PATH_HOST=../app/

- COMPOSE_PROJECT_NAME=laradock
+ COMPOSE_PROJECT_NAME=hoge

- DATA_PATH_HOST=~/.laradock/data
+ DATA_PATH_HOST=~/.laradock-hoge/data

- PMA_PORT=8080
+ PMA_PORT=8888

- WORKSPACE_INSTALL_MYSQL_CLIENT=false
+ WORKSPACE_INSTALL_MYSQL_CLIENT=true

APP_CODE_PATH_HOST

laravelがマウントされるディレクトリ名です。いつもこのように、laradockに並列してapp ディレクトリを作成しています。

 $ tree -L 1
 .
├── app
└── laradock

実は以前、私は、LaravelをインストールしてからAPP_CODE_PATH_HOSTを変更するよう記述していました。

公式サイトを見ると、作成するディレクトリを指定しないと動かないのかと思ってしまいますよね。

https://laravel.com/docs/7.x から抜粋

でも、実は↓のように書くと、今自分がいるディレクトリにインストールを実施することもできます。

composer create-project --prefer-dist laravel/laravel ./

だから、ディレクトリをあらかじめ作成してしまってもOKです。

COMPOSE_PROJECT_NAME

コンテナ名のprefixを変更することができます。laradockのママだと共通化してしまうので、例えばhogeアプリケーションだけ、laradockで立ち上げたnginxの設定を変更したい!という時に使うと良いです。

DATA_PATH_HOST

これは一番最初ハマりました。Laravelのvolumes

試しに docker-compose.yml の MySQLに関する設定部分をみてみましょう。

### MySQL ################################################
    mysql:
      # (中略)
      volumes:
        - ${DATA_PATH_HOST}/mysql:/var/lib/mysql

volumesとは、docker内部のデータを永続化させる仕組みのことです。dockerは終了するたびにデータが破棄されてしまいますからね。

この部分はlaradockを導入するたびに一緒なので、もしlaravelのmigrate先データベース名を一緒にしてしまうとバッティングしてしまうんですね。

なので、プロジェクトごとにデータの保存先を変更しています。

最近では、上記の例に書いたように、 ~/.laradock-[プロジェクト名]/data として作成することが多いです。

- DATA_PATH_HOST=~/.laradock/data
+ DATA_PATH_HOST=~/.laradock-hoge/data

PMA_PORT

PMAはPhpMyAdminに関する設定部分です。

もし、下記のように

docker-compose up -d nginx mysql phpmyadmin

nginx, mysql, phpmyadmin の設定でlaradockを立ち上げたい場合、ポート番号8080が競合してしまいます。なので、他のポートを指定してあげています。

WORKSPACE_INSTALL_MYSQL_CLIENT

今回は例として WORKSPACE_INSTALL_MYSQL_CLIENT を取り上げましたが、他にも WORKSPACE_INSTALL_*** という環境変数がたくさんあります。

WORKSPACE_INSTALL_NPM_GULP=true
WORKSPACE_INSTALL_NPM_BOWER=false
WORKSPACE_INSTALL_NPM_VUE_CLI=true
WORKSPACE_INSTALL_NPM_ANGULAR_CLI=false
WORKSPACE_INSTALL_PHPREDIS=true
WORKSPACE_INSTALL_WORKSPACE_SSH=false
WORKSPACE_INSTALL_SUBVERSION=false
WORKSPACE_INSTALL_BZ2=false
WORKSPACE_INSTALL_GMP=false
WORKSPACE_INSTALL_XDEBUG=false
WORKSPACE_INSTALL_PCOV=false
WORKSPACE_INSTALL_PHPDBG=false
....

ここをいじることでコンテナのビルド時にインストールしてもらえます。

よくいじるのは

  • WORKSPACE_INSTALL_MYSQL_CLIENT
  • WORKSPACE_INSTALL_PHPDBG

あたりです。


以上、よくいじる主要なパラメータをご紹介しました。

ぜひ皆さんもチェックしてみてください!

エンジニアにおすすめ転職サイト

マイナビIT AGENT
迷ったらまずはココ。求人数が多いため希望や条件にマッチする求人が見つかる!

レバテックキャリア
担当者のレベルが高い。エンジニア特化で15年の実績がある実績で初回提案での内定率驚異の90%!

JOIN
副業やフリーランスとして高額報酬案件を見つけるならJOIN。未経験者でも案件獲得実績豊富が強み!

\面白いと思ったら/

記事のシェア & Twitter のフォロー をお願いします!

@proglearn
一緒によく読まれている記事

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です