使用 Docker 搭建 Laravel 本地環境

(原文地址:https://blog.tanteng.me/2017/...php

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

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

安裝 docker

首先安裝 docker。laravel

克隆 laradock

laradock 官方文檔:http://laradock.io/git

laradock github:https://github.com/laradock/l...github

laradock 是一個包含全功能用於 docker 的 PHP 運行環境,使用 docker-compose 方式部署。(特別說明:它不只用於 Laravel 環境搭建,並且支持全部其餘 PHP 框架,它就是一整套 PHP 的環境。)redis

部署 PHP 環境

1.克隆 laradocksql

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

2.建立環境變量文件docker

cp env-example .env

3.直接用 docker-compose 運行須要啓用的服務,如:segmentfault

docker-compose up -d nginx mysql redis beanstalkd

這樣就啓動了所需的 PHP 運行環境,php-fpm 默認會運行,因此不須要指定。

圖片描述

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 配置。

圖片描述

如圖,在 laradock 項目的 nginx 文件夾下的 sites 目錄下添加配置文件便可。

執行 composer

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

docker-compose exec workspace bash

進入到 workspace 容器,就能夠進行 compose 命令等操做了。

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

Docker 講座介紹

Docker 是如今火熱的一個容器技術,做爲開發人員有必要掌握它的使用,不管你是用來搭建本地環境,仍是部署應用。你將體會到使用 Docker 的便利。

一個規範的開發流程,首先要有一個完善的本地環境,之前使用 vagrant + Homestead 做爲虛擬機,啓動慢,佔用空間大,而 Docker 更輕量級,啓動速度快,更能夠方便搭配不一樣的容器。不只如此,docker 配置也能夠用於生產環境,"Build once, Run anywhere, Configure once, Run anything".

本次講座重點以搭建 PHP 環境爲例,使用 Github 上一個項目 —— laradock,演示如何以 docker-compose 方式搭建全套本地 PHP 開發環境。

你將學習到:

Docker 基礎知識
Dokerfile 語法
docker-compose.yml 語法
docker-compose 的使用
如何使用 laradock 搭建 PHP 環境

讓咱們開啓 PHP 開發者的 Docker 之旅!

講座報名地址:https://segmentfault.com/l/15...

相關文章
相關標籤/搜索