Docker搭建Laravel开发环境

Laradock搭建Laravel开发环境


基本环境:

操作系统:Linux Ubuntu16.04 LTS
PHP >=7.0

1. 安装Docker CE 17.0X:

Docker目前分为两个版本:

Docker Enterprise Edition (Docker EE) 专为企业开发和IT团队设计,用于在大规模生产中构建,运送和运行关键业务应用程序。Docker EE集成,认证和支持,为企业提供业界最安全的容器平台,使所有应用程序现代化。
Docker Community Edition (Docker CE) 是开发人员和小团队的理想选择,希望开始使用Docker并尝试基于容器的应用程序。Docker CE可在许多平台上使用,从桌面到云到服务器。

如此你此前安装过docker-engine,需要先卸载它们:

$ sudo apt-get remove docker docker-engine

安装 Docker 的AUFS存储驱动程序,强烈建议Ubuntu 14.04用户安装

$ sudo apt-get install \
    linux-image-extra-$(uname -r) \
    linux-image-extra-virtual
开始安装Docker CE

1、安装docker包

$ sudo apt-get install \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common

2、添加Docker的官方GPG密钥

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

3、设置stable稳定的仓库(stable稳定版每季度发布一次,Edge版每月一次)

$ sudo add-apt-repository \
        "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
        $(lsb_release -cs) \
        stable"

4、更新apt包

$ sudo apt-get update

5、安装Docker CE

$ apt-get install docker-ce

6、运行Docker

$ systemctl start docker

至此Docker CE就安装完成了,但是国内访问Docker Hub有时会遇到问题,所以我们可以配置镜像加速器。

我这里用的是阿里云的加速器
先去阿里云开发者中心注册帐号并登录:https://www.aliyun.com/
然后在Docker加速服务中找到自己专属的加速地址:https://cr.console.aliyun.com/#/accelerator
按照给出的方式去加速Docker即可

2.下载laradock:

在任意目录下克隆laradock项目:

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

进入laradock目录,将env-example 目录复制一份,命名为.env

cp env-example .env

运行容器:这个时候如果laradock中没有对应的软件会下载下来,时间较久。

docker-compose up -d nginx mysql redis beanstalkd

如果指定端口已经被占用,运行上述命令会报错,关闭相应的服务再重新运行上述命令即可。

打开项目的 .env 文件并添加如下配置:

DB_HOST=mysql
REDIS_HOST=redis
QUEUE_HOST=beanstalkd

要测试配置访问域名指向 Docker 环境目录,我们先在 laradock 父级目录下创建一个与 laradock 同级的 wwwroot 目录,然后在 wwwroot 目录下用composer 命令创建一个新的 Laravel 应用,相应的层级目录关系如下所示:

mkdir wwwroot

composer create-project --prefer-dist laravel/laravel blog

注意PHP要开启laravel对应的php拓展

然后我们需要到 laradock 下编辑 .env 中的 APPLICATION 配置项:

APPLICATION=../wwwroot/

这样就相当于为 wwwroot 与 Docker 的 /var/www 目录建立了软链接,然后我们修改 laradock/nginx/sites/default.conf 中的映射关系:

检查一下创建的Laravel项目中的.env文件,如果没有,就复制一份env.example ,修改对应的配置:

DB_CONNECTION=mysql
DB_HOST=mysql
DB_PORT=3306
DB_DATABASE=root
DB_USERNAME=root

应用key

接下来要做的事情就是将应用的 key(APP_KEY)设置为一个随机字符串,如果你是通过 Composer 或者 Laravel 安装器安装的话,该 key 的值已经通过 php artisan key:generate 命令生成好了。如果你自己访问失败的话,尝试手动输入上面的命令。

运行项目:

浏览器中输入 http://localhost

注:更多使用细节请参考官方文档:http://laradock.io/documentation/

你可能感兴趣的:(linux)