使用 Docker 搭建 Laravel 本地環境

深深的呼吸123發表於2019-03-04

(原文地址:blog.tanteng.me/2017/10/doc…

Laravel 官方提供 Homestead 和 Valet 作為本地開發環境,Homestead 是一個官方預封裝的 Vagrant Box,也就是一個虛擬機器,但是跟 docker 比,它佔用體積太大,啟動速度慢,同時響應速度很慢,現在有了 docker 這種更好的方式,可以輕鬆方便的搭建整套 PHP 開發環境。

本文就介紹如何使用 docker 搭建 Laravel 本地環境。

安裝 docker

首先安裝 docker。

克隆 laradock

laradock 官方文件:laradock.io/

laradock github:github.com/laradock/la…

laradock 是一個包含全功能用於 docker 的 PHP 執行環境,使用 docker-compose 方式部署。(特別說明:它不僅用於 Laravel 環境搭建,而且支援所有其他 PHP 框架,它就是一整套 PHP 的環境。)

部署 PHP 環境

1.克隆 laradock

git clone https://github.com/Laradock/laradock.git複製程式碼

2.建立環境變數檔案

cp env-example .env複製程式碼

3.直接用 docker-compose 執行需要啟用的服務,如:

docker-compose up -d nginx mysql redis beanstalkd複製程式碼

這樣就啟動了所需的 PHP 執行環境,php-fpm 預設會執行,所以不需要指定。

file
file

Laravel 配置檔案

Laravel 配置檔案需要注意的問題是,在 .env 檔案中,mysql 和 redis 的地址需填寫成這樣,而不是 ip 地址形式:

DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=tanteng.me
DB_USERNAME=root
DB_PASSWORD=root

REDIS_HOST=redis
REDIS_PASSWORD=null
REDIS_PORT=6379複製程式碼

Nginx 配置

在本地通過域名方式訪問站點,要將 host 中域名繫結到本地,同時還需要增加 nginx 配置。

file
file

如圖,在 laradock 專案的 nginx 資料夾下的 sites 目錄下新增配置檔案即可。

執行 composer

執行 composer 等操作,需要進入到 workspace 容器中進行,使用命令:

docker-compose exec workspace bash複製程式碼

進入到 workspace 容器,就可以進行 compose 命令等操作了。

具體使用上的問題請參加 laradock 官方文件,上面都有說明。

相關文章