14
Help us understand the problem. What are the problem?

More than 1 year has passed since last update.

posted at

updated at

Docker x Laravel 脅威の1ファイル!最小構成でローカル開発環境を構築する

docker-compose.yml の1ファイル、ウェブサーバーコンテナ、データベースサーバーコンテナなしで作成する最小構成のDocker Laravel開発環境です。

環境

  • PHP: 7.4
  • Composer: 2.0
  • Docker: 20.10.2
  • Docker Compose: 1.27.4

docker-compose.yml 1ファイルのみ

docker-compose.yml

docker-compose.yml
version: "3.8"
services:
  composer:
    image: composer:2.0
    volumes:
      - ./backend:/work/backend
    working_dir: /work/backend

  app:
    image: php:7.4-cli-buster
    ports:
      - 8000:8000
    volumes:
      - ./backend:/work/backend
    working_dir: /work/backend
    command: php artisan serve --host=0.0.0.0

使い方

Laravelプロジェクトの作成

$ docker-compose run composer create-project --prefer-dist laravel/laravel .

# Laravelバージョン指定
$ docker-compose run composer create-project --prefer-dist "laravel/laravel=6.*" .

Laravelビルトインサーバーの起動

$ docker-compose up -d app

こだわったポイント

Dockerfileのビルドが必要ないこと。
そのため、composerもコンテナ分けて作ってます。

もはやカップ麺を作るより速く、お湯を沸かす時間だけで作れてしまうほどシンプルな構成です。

作った理由

Dockerfileのビルドの時間がかかるから。
Laravelのお試し環境を作るのに最強の構成を作るまででもないなという時。

GitHub

オススメの記事

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
14
Help us understand the problem. What are the problem?