win7环境基础在上一篇win7下docker环境搭建nginx+php-fpm+easyswoole开发环境中已经详细叙述搭建完成

本篇文章将叙述如何在上述基础上搭建laravel开发环境,这个其实安装跟easyswoole有点类似:

1、先配置nginx,

详细代码如下

server {

    listen ;
listen [::]:; server_name laravel.test;
root /var/www/locallaravel/public;
index index.php index.html index.htm; location / {
try_files $uri $uri/ /index.php$is_args$args;
} location ~ \.php$ {
try_files $uri /index.php =;
fastcgi_pass php-fpm:;
fastcgi_index index.php;
fastcgi_buffers 16k;
fastcgi_buffer_size 32k;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
#fixes timeouts
fastcgi_read_timeout ;
include fastcgi_params;
} location ~ /\.ht {
deny all;
} location /.well-known/acme-challenge/ {
root /var/www/letsencrypt/;
log_not_found off;
} error_log /var/log/nginx/locallaravel_error.log;
access_log /var/log/nginx/locallaravel_access.log;
}

2、宿主机本机目录上新建一个sh脚本文件,用于运行安装laravel,并命名为laravel_install.sh详细代码如下:

#!/bin/sh

# swoole image must contain php composer
swoole_img="swoole:4.1.2"
container_code_path="/app"
work_dir="/www"
docker_compose_file_path="/www/dnmp" cur_dir=$(pwd) if [ -d ${work_dir}/locallaravel ]; then
sudo rm -rf ${work_dir}/locallaravel
fi Init_Easyswoole()
{
docker run --rm --net=host -v ${work_dir}:${container_code_path}:rw composer sh -c "composer config -g repo.packagist composer https://packagist.laravel-china.org && cd ${container_code_path} && composer create-project --prefer-dist laravel/laravel locallaravel"
} Init_Easyswoole
cd ${docker_compose_file_path}
docker-compose up -d
docker-compose ps

以上的word_dir为宿主机的工作目录,/www/dnmp为dnmp环境中的docker-compose.yml目录;

使用xshell进行连接docker虚拟机,进入到lavarel_install.sh所在目录,运行:

./laravel_install.sh

laravel安装成功后,打开Docker Quickstart Terminal.exe

进入到dnmp目录,运行

docker-compose down

再运行

docker-compose up -d

然后查看容器是否全部启动

docker-compse ps

发现已经全部启动,在win7宿主机进行访问http://localhost:9501/,已经可以正常使用了

接下来就可以开始使用laravel了,不过呢还需要再安装mysql作为数据库

3、安装mysql

将docker-compose.yml的mysql配置注释去掉

记得开启一下mysql声明卷,不然的话就会报一下错误

并修改.env中mysql配置

接下来,还是老样子,先将镜像dnmp停止

然后安装mysql,因为之前没有安装过mysql,所以需要先build

docker-compose build mysql

build成功之后,重新启动镜像

docker-compose up -d

然后查看下已启动的镜像

docker-compose ps

发现mysql已正常启动

PS,如果刚开始安装的mysql版本是8的话,用navicat连接就会出现以下错误:

解决方案是,将.env中mysql版本改为5.7(暂时没必要用最新版的),然后用xshell连接docker,删除mysql的存储卷volume(这一步没有做的话可能会导致mysql无法正常启动)

docker volume ls

docker volume rm laradock_mysql

再在Docker Quickstart Terminal.exe软件中进行如下操作,mysql5.7正常启动

docker-compose build mysql
docker-compose up -d

记得端口要做映射

再用navicat进行连接

哇塞,mysql也可以使用了,真开心~~

4、lavarel配置mysql

创建数据库locallaravel和表user,并插入一条数据;

locallavarel项目下的.env配置文件,修改下:

在locallavarel项目中app\Http\Controllers\下创建一个控制器UserController.php,并在routes\web.php中创建一个路由

Route::get('User','UserController@index');

指向刚创建的控制器UserController.php,测试访问http://laravel.test/User,结果提示:

查阅相关资料,才发现是数据库的ip对不上,然后把数据库的host改成当前机器的ip就好了

win7下docker环境搭建nginx+php-fpm+easyswoole+lavarel+mysql开发环境的更多相关文章

  1. Yosemite 快速搭建 自带Apache+PHP5.6+MySQL 开发环境

    1.安装homebrew ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go/install)" 2.安装h ...

  2. Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试

    Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试一.下载相关安装包 1.下载nginx最新版本(nginx1.3.13版之后才支持websocket协议) 下载地址 ...

  3. 第一篇:Win10系统搭建Python+Django+Nginx+MySQL 开发环境详解(完美版)

    Win10+Python+Django+Nginx+MySQL 开发环境搭建详解 PaulTsao 说明:本文由作者原创,仅供内部参考学习与交流,转载引用请注明出处,用于商业目的请联系作者本人. Wi ...

  4. 搭建eclipse+maven+scala-ide的scala web开发环境

    http://www.tuicool.com/articles/NBzAzy 江湖传闻,scala开发的最佳利器乃 JetBrains 的神作 IntelliJ IDEA ,外加构建工具sbt 是也. ...

  5. Nginx+Python+uwsgi+Django的web开发环境安装及配置

    Nginx+Python+uwsgi+Django的web开发环境安装及配置 nginx安装 nginx的安装这里就略过了... python安装 通常系统已经自带了,这里也略过 uwsgi安装 官网 ...

  6. DELPHI 10.2 TOKYO搭建LINUX MYSQL开发环境

    DELPHI 10.2 TOKYO搭建LINUX MYSQL开发环境 笔者使用ubuntu64位LINUX 首先必须保证LINUX可以连互联网. 安装MYSQLsudo apt-get update ...

  7. 【前端福利】用grunt搭建自己主动化的web前端开发环境-完整教程

    jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用! 1. 前言 各位web前端开发者.假设你如今还不知道grunt或者听说过. ...

  8. Unix/Linux环境C编程入门教程(17) Gentoo LinuxCCPP开发环境搭建

    1. Gentoo Linux是一套通用的.快捷的.完全免费的Linux发行,它面向开发人员和网络职业人员.与其他发行不同的是,Gentoo Linux拥有一套先进的包管理系统叫作Portage.在B ...

  9. win7下docker环境搭建nginx+php-fpm+easyswoole开发环境

    基础的环境已在文章nginx.php-fpm.swoole HTTP/TCP压测对比中搭建了,现在是在这个基础上在搭建easyswoole开发环境 主要要修改的地方是dnmp包里面的docker-co ...

随机推荐

  1. linux缓存手动清理

    一般情况下不建议这么做, 如果你确定向的话还是可以的首先运行sync把未存盘的cache都写入磁盘,稍等片刻, 或者是直接运行sync 两遍 然后echo  1  试试应该大部分缓存可以释放 释放ca ...

  2. C语言第九节进制

    进制 什么是进制 是一种计数的方式,数值的表示形式 数一下方块的个数 汉字:十一 十进制:11 二进制:1011 八进制:13 多种进制:十进制.二进制.八进制.十六进制.也就是说,同一个整数,我们至 ...

  3. bzoj千题计划136:bzoj3931: [CQOI2015]网络吞吐量

    http://www.lydsy.com/JudgeOnline/problem.php?id=3931 在最短路网络上跑最大流 #include<queue> #include<c ...

  4. Python排序算法之直接插入排序

    插入排序的主要思想是每次取一个列表元素与列表中已经排序好的列表段进行比较,然后插入从而得到新的排序好的列表段,最终获得排序好的列表. 比如,待排序列表为[49,38,65,97,76,13,27,49 ...

  5. Is it possible to create @Around Aspect for feign.Client

    https://github.com/spring-cloud/spring-cloud-openfeign/issues/59 看到github 有人问这个问题,做了个示例: import org. ...

  6. javascript里你绝对用的上的字符分割函数--原创

    // 在数组内字符为未知情况下,合并和分割的解决方案 var data = [['your name', 'myvalue'], ['myr name', 'thivalue']]; function ...

  7. zzd 的割草机(Lawnmower)

    评测传送门 [题目描述] 已知花坛为一个 n * m 的矩形,草只会长在某些个格子上,zzd 有一个割草机,一开始,zzd 站在(1,1)处,面向(1,m)(面向右).每次 zzd 有两个选择(耗费一 ...

  8. 在mac环境下用QT使用OpenGL,glut,glfw

    只需要在新建工程中.pro文件中添加: #opengl glut LIBS+= -framework opengl -framework glut 就可以使用glut了. 继续添加: ##glfw L ...

  9. web项目打包后在代码中获取资源文件

    在web项目里面,有时代码里面需要引用一些自定义的配置文件,这些配置文件如果放在类路径下,项目经过打包后使用的相对路径也会发生变化,所以以下给出了三种解决方案. 一.properties下配置 在类路 ...

  10. imperva 更改web界面的密码

    通过SSH作为用户根登录到MX(或通过另一个用户并提升) 运行命令“su oracle” //首先切换到oracle用户 sqlplus secure/(密码)   /用此命令登录到数据库     s ...