介绍
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