當前位置: 妍妍網 > 碼農

Laradock 一個完整PHP的Docker本地開發環境

2024-06-23碼農

介紹

Laradock 是為 PHP 提供的完整 Docker 本地開發環境,有助於在 Docker 上執行 PHP 應用程式,和 Homestead 一樣提供了一系列打包好(包括配置)的 Docker Image。

Laradock 早期專註為 Laravel 打造 Docker 開發環境,因而最早在 Laravel 社群中出名,後來隨著影響力的擴大,逐漸被 PHP 社群接納和采用,目前支持的 PHP 計畫除了 Laravel 之外,還有 Symfony、CodeIgniter、WordPress、Drupal 等等。

功能特性

  • 可在各 PHP 版本之間輕松切換:8.3,8.2,8.1,7.4,7.3,7.2,7.1,5.6 ...

  • 可選擇你最喜歡的資料庫引擎:MySQL,Postgres,MariaDB ......

  • 可執行專屬的軟體組合:Memcached,HHVM,Beanstalkd ...

  • 每個軟體都在單獨的容器上執行:PHP-FPM,NGINX,PHP-CLI ...

  • 易於客製,只需簡單編輯 Dockerfile 即可

  • 所有映像均從官方基礎映像擴充套件而來,安全可靠

  • 易於使用環境變量安裝 / 刪除容器中的軟體

  • 簡潔、結構良好的 Dockerfiles(Dockerfile)

  • 一切都是可見的和可編輯的

  • 使用

    composer create-project laravel/laravel Tinywan-app "5.2.*"

    git clone https://github.com/laradock/laradock.git

    進入到 laradock

    cd laradock/

    目錄結構

    cp .env.example .env

    然後在 .env 中修改映像構建過程中 Linux 軟體源為國內映像以免映像構建過程中出現網路超時問題:

    # If you need to change the sources (i.e. to China), set CHANGE_SOURCE to true
    CHANGE_SOURCE=true

    執行這些容器

    docker-compose up -d nginx mysql redis

    nginx 映像構建在 php-fpm 之上, php-fpm 構建在 workspace 之上,所以啟動 nginx 會先啟動 workspace php-fpm

    如果指定埠已經被占用,執行上述命令會報錯,關閉相應的服務再重新執行上述命令即可。

    開啟 Laravel 計畫的 .env 檔並添加如下配置:

    DB_HOST=mysql
    REDIS_HOST=redis
    QUEUE_HOST=beanstalkd

    開啟瀏覽器,存取 localhost