docker構建php環境

foryoufeng發表於2022-08-26

phpdock 是一個使用docker構建PHP環境的工具, 透過它你很方便的可以打造相同PHP環境,不管是本地開發,還是測試環境,還是生產環境

說明

讓我們看看使用docker來安裝PHP,nginx,MySQL,Redis和Composer是怎樣的絲滑

1 - 下載 phpdock 到你的php專案同級:

git clone https://github.com/ibiteam/phpdock.git

2 - 進入phpdock 並設定配置檔案:

cd phpdock
cp .env.example .env
cp docker-compose-example.yml docker-compose.yml

3 - 啟動容器:

docker-compose up -d nginx mysql php redis

等映象下載下來並啟動了容器,你將看到如下的服務在執行

phpdock

重啟nginx

docker-compose restart nginx

執行composer install

  • 示例假設phpdock同級有一個laravel的資料夾
    docker-compose exec -T php bash -c "cd laravel && composer install --no-dev"
  • tips:本地檔案都對映進容器的/var/www

.env.example

  • 設定redis密碼

    REDIS_PASSWORD=123456
  • 設定mysql資料庫名稱

    MYSQL_DATABASE=phpdock
  • 設定mysql資料庫root密碼

    MYSQL_ROOT_PASSWORD=phpdock
  • 設定mysql資料庫資料儲存路徑

    MYSQL_DATA_PATH=./data/mysql
  • 設定rabbitmq預設的vhost

    RABBITMQ_DEFAULT_VHOST=phpdock
  • 設定rabbitmq登入的使用者名稱

    RABBITMQ_DEFAULT_USER=phpdock
  • 設定rabbitmq登入的密碼

    RABBITMQ_DEFAULT_PASS=phpdock
  • 設定php的版本,可選的有[72 , 74 , 81]

    PHP_VERSION=74
  • 設定php擴充套件的路徑

    PHP_EXTENSION_DIR=/usr/local/lib/php/extensions/no-debug-non-zts-20190902
  • 設定nginx配置檔案的目錄,如local,test,production等,或者你可以根據你自己的需要進行定義

    NGINX_CONF_DIR=local
  • 設定時區

    TIME_ZONE=Asia/Shanghai

檔案目錄

cron      # 執行定時任務,更多的文件可以檢視 `ofelia`,`config.ini.example`是一個示例
data      # mysql和redis資料儲存的路徑
logs      # nginx和redis日誌儲存的路徑
mysql     # mysql映象的配置
nginx     # nginx站點配置資訊,`production`檔案下的配置檔案是被忽略的,需要手動進行編輯
php-fmp   # 不同版本PHP映象構建的檔案
redis     # redis配置檔案
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章