参考:http://laravelacademy.org/post/6569.html
依赖
确保系统已安装:
- git
- docker
- docker-compose
安装LaraDock
如果系统尚未安装Laravel应用,需要从头开始搭建全新的环境,可以在系统任意位置克隆Github仓库到本地:
git clone https://github.com/LaraDock/laradock.git
如果之前已经安装了Laravel,也可以在Laravel应用根目录下克隆上述Github仓库代码。
安装Laravel应用
- Enter the laradock folder and rename env-example to .env.
cp env-example .env - Run your containers:
docker-compose up -d nginx postgres pgadmin redis
注:workspace 和 php-fpm 将运行在大部分实例中, 所以不需要在 up 命令中加上它们。 - Open your project’s .env file and set the following:
DB_HOST=postgres
REDIS_HOST=redis
- Open your browser and visit localhost: http://localhost
That's it! enjoy :)
Laravel安装
-
首先进入laradock目录,
进入workspace容器,执行Laravel安装及Artisan命令等操作:docker exec -it --user=laradock laradock_workspace_1 bash 或 docker exec -it --user=root laradock_workspace_1 bash
这时候可能出现问题:
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe9 in position 0: ordinal not in range(128)
解决方法:
修改mimetypes.py文件,路径位于python的安装路径下的Lib\mimetypes.py文件。在import下添加如下几行:
if sys.getdefaultencoding() != 'gbk':
reload(sys)
sys.setdefaultencoding('gbk')
-
建立laravel项目,项目名菜为coolapp
composer create-project laravel/laravel coolapp建立lumen项目,项目名为myapi
composer create-project --prefer-dist laravel/lumen myapi
如果提示mkdir没有权限,上一步尝试用root进入wakspace
- 修改laradock环境变量.env
### Application
# Point to your application code, wish should be available at `/var/www`
APPLICATION=../
- 修改nginx的网站根目录,否则会出现404页面
/var/www/laradock/nginx/sites# vim default.conf
把root /var/www/public;
修改为root /var/www/coolapp/public;
- 接下来进入coolapp目录编辑.env的数据库配置:
DB_HOST=postgres - 修改项目目录里的这个文件夹权限,否则会出现空白页面
sudo chmod -R 777 storage bootstrap/cache
这时候laravel应该能正常运行,http://localhost