没使用过docker,为了完成这个功能,周末两天刷了后盾人关于docker的视频和bilibili上的一些视频。...之前一直都是直接手动部署到服务器上,现在来看下新旧部署方式的对比: 截屏2022-02-14 下午4.03.18.jpg 最终想要的结果是一个docker镜像,里边包含所有的运行环境和代码 看下之前的目录结构...: 截屏2022-02-14 下午4.49.52.png 方案1: laradock 想要将laravel做成一个docker,第一个想到的是laradock这,用laravel的人应该没有不知道这个的...2:docker-compose docker-compose是一个用来定义和运行复杂应用的Docker工具。...compose 通过一个配置文件来管理多个Docker容器,使用docker-compose脚本来启动,停止和重启应用。 这种方式很轻易的在本地实现了镜像构建,但是有两个问题 1.
昨天看到 Laravel 新出来一个工具 Laravel Sail ,简而言之就是 Laravel 自己出的 基于 Docker 的本地开发环境。...我现在手头上只有 Windows ,所以我们先用 Windows 来体验一下,因我机器已经装了 WSL 和 Docker,所以省略了这些安装过程。...最开始我以为要在 WSL 中安装 Docker ,然后我突然发现,WSL 和 docker-for-windows 他们之间可以互通。所以不需要再 WSL 中安装 Docker。...Second 打开 Docker 的 Settings 的 General 勾选 Expose daemon on tcp://localhost:2375 without TLS 和 Use the...参考链接: https://zhuanlan.zhihu.com/p/61542198 https://docs.docker.com/docker-for-windows/wsl/ https://laravel.com
在这篇文章中我们将通过Docker在个人本地电脑上构建一个快速、轻量级、不依赖本地电脑所安装的任何开发套件的可复制的Laravel和Vue项目的开发环境(开发环境的所有依赖都安装在Docker构建容器里...第一步:获取Laravel的源码包 因为我们电脑上不安装Composer,所以就不能使用Composer来创建Laravel项目了, 这里我使用cURL直接从github上下载了最新的Laravel源码包...curl -L -O https://github.com/laravel/laravel/archive/v5.5.0.tar.gz /&& tar -zxvf v5.5.0.tar.gz /&&...初始化Laravel项目 启动完服务后我们可以初始化Laravel项目了,步骤跟官方文档里介绍的一样,但是需要在启动的app服务的容器里执行: docker-compose exec app composer...gist里的文件稍微旧一些,后来在使用的过程中又加入些新的PHP模块和Node,之前composer也单独放到了一个容器中,不过相信聪明的你看到这里应该已经会根据需求更改这些文件啦。
Event::fire(new TestEvent($str)); event(new TestEvent($str)); php artisan event:generate 批量生成event和listen...编辑EventServiceProvider.php 备注:事件可以广播,通过websocket服务,依赖Redis的pub和sub模式
更好的用户体验 解决办法withInput() + old() laravel 会自动把用户输入的数据存到一次性的session里。
composer国内镜像和composer安装包的命令就不多说了,我直接说下在docker下的用法 命令: docker run -it -v {宿主机目录}:/app --privileged...config -g repo.packagist composer https://packagist.phpcomposer.com docker下composer安装包的命令,以Laravel为例...: docker run -it -v /data/www:/app --privileged=true composer create-project --prefer-dist laravel/laravel...blog 合并后,docker下composer国内镜像安装Laravel: docker run -it -v /data/www:/app --privileged=true composer...Laravel的目录,也是我nginx环境的web目录
php镜像,所以应该在php镜像中添加composer.Dockerfile如下: FROM php:7.2.2-fpm-alpine3.7 LABEL maintainer="php-composer Docker...composer-setup.php');" && \ mv composer.phar /usr/local/bin/composer && \ composer self-update 生成镜像 docker...SCRIPT_FILENAME /app/public/$fastcgi_script_name; include fastcgi_params; } } 运行docker...【非常重要】进入phpfpm容器:docker exec -it phpfpm sh 然后修改“ listen = 127.0.0.1:9000” 为“listen = 9000” 否则连不上php 3....允许nginx用户访问:chown -R www-data:www-data /app 4.赋予storage目录写权限:chmod -R 755 /app/storage 运行nginx docker
Laravel 官方最近发布了 Laravel Sail —— 一个轻量级的、基于 Docker 的 Laravel 本地集成开发环境,今天学院君就以 Mac 系统为例,给大家演示下如何基于 Laravel...通过终端输出可以看到,该安装流程会先拉取 laravelsail/php80-composer 这个 Docker 镜像(包含 PHP 和 Composer),而后在当前目录下新建这个 Laravel...Sail 本质上是基于 Docker Compose 编排的 Docker 容器服务构建起来的 Laravel 集成开发环境(包含 PHP、MySQL、Redis),只不过针对 Laravel 项目做了上层封装和兼容...,你不需要了解任何关于 Docker 容器的知识,就可以通过 Sail 文档提供的命令满足日常开发需求,这极大降低了基于 Docker 搭建 Laravel 本地开发环境的入门门槛。...和 docker-compose 一样,你可以通过 -d 选项指定以后台守护进程的方式来启动所有相关容器服务: ?
输入下列命令配置 composer 包和依赖库国内下载镜像 composer config -g repositories.packagist composer https://packagist.phpcomposer.com...安装 laravel 应用 laravel 中文官网文档 提供了两种安装方法,一种是采用配置 laravel 安装工具(反正我是按照配的结果安装应用时返回错误的),另一种是采用 composer 命令的方式安装...composer create-project laravel/laravel blog –prefer-dist 解释 composer create-project 就是使用 composer...工具创建项目的意思,laravel/laravel 就是指明模板是什么, blog 是你要创建的应用的名称,后面那个就是命令的参数。...(采用 CC BY-NC-SA 4.0 许可协议进行授权) 本文标题:《 Windows 配置 Composer 和 Laravel 笔记 》 本文链接:https://lisz.me/tech/php
要点: Laravel 有 2 种主要方式来实现用户授权:gates 和策略。 Gates 接受一个当前登录用户的实例作为第一个参数。并且接收可选参数,比如相关的Eloquent 模型。...用命令生成策略 php artisan make:policy PostPolicy --model=Post 带--model参数生成的内容包含CRUD方法 Gate用在模型和资源无关的地方,Policy...@can('update', $post) 编辑 @endcan @can 和 @cannot 各自转化为如下声明: @if (Auth::user()->can('update...-- 当前用户不可以更新博客 --> @endunless 参考:https://d.laravel-china.org/docs/5.5/authorization
原文:https://learnku.com/articles/19876#1face4 Eloquent ORM 看起来像一个简单的机制,但在幕后,有很多半隐藏的功能和不太知名的方法来实现更多。...命令行创建模型的同时,创建迁移文件和控制器 laravel创建模型的命令大家都很熟悉: php artisan make:model Company 不过你应该了解另外几个很常用的参数: php artisan
laravel 相关 安装 laravel 框架,版本根据自己的实际情况选择 composer create-project --prefer-dist laravel/laravel laravel..."8.5.*" 在.env文件中配置数据库连接 DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=laravel DB_USERNAME
Valet 不但可以支持 Laravel,还可以支持 Zend、CakePHP 等多种 PHP 常用框架和 Wordpress 等多种 PHP 常用应用。以下会简要介绍该工具的配置使用。 ...在前几年撰写的 《laravel 5.2 在 lnmpa 一键安装包环境下的部署》 一文中,使用了 lnmp.org 提供的一键 PHP 项目生产环境来开发和部署 Laravel。...虽然说这种方式也是比较简单粗暴,可以利用脚本进行管理,后期的管理、配置成本都比较低,但是随着不断对各个基础环境的了解,可以自行对每个基础环境的进行单独配置和组合配置,这样的一键方式反而显得有不少冗余和复杂化...因此,此处想要介绍自行搭建 L(inux)+N(ginx)+M(ysql)+P(HP) 开发和部署环境。...(采用 CC BY-NC-SA 4.0 许可协议进行授权) 本文标题:《 Laravel 开发和部署环境搭建 》 本文链接:https://lisz.me/tech/php/laravel-dev.html
$this->attributes['first_name'] = strtolower($value); } 定义一个访问器 定义一个修改器 注意:使用驼峰格式命名 https://laravel-china.org.../docs/laravel/5.6/eloquent-mutators/1406 参考链接 https://laravel.com/docs/5.5/eloquent-mutators#array-and-json-casting
知识点: 1、laravel结合vuejs使用的流程:一图看清
TP框架和laravel框架区别 【PHPExcel】读取EXCEL中的图片并保存到本地的方法直接上代码: //导入测试 $source_file = FILENAME.'
exec -it demo-service /bin/sh ## 安装依赖 composer install barryvdh/laravel-ide-helper ## 自动生成模型字段 php artisan.../bin/sh ## 安装依赖 composer install beyondcode/laravel-dump-server ## 监听 dump 函数输出 php artisan dump-server...-f queue.Dockerfile -t laravel-worker 运行队列容器 docker run -d --name=laravel-worker-service laravel-worker...-it laravel-worker-service /bin/sh 重启队列: php /var/www/artisan queue:restart 重启队列逻辑 队列开始执行时, 队列获取当前缓存的时间戳...t1 执行好上面的重启任务之后laravel会把时间戳t2写入缓存 每一个队列任务执行完成之后,从缓存中拿出时间戳,如果t2不等于t1停止当前进程 由于supervisord设置了autostart,
每个迁移文件的名称都包含了一个时间戳,以便让 Laravel 确认迁移的顺序。 --table 和 --create 选项可用来指定数据表的名称,或是该迁移被执行时是否将创建的新数据表。...1.2 迁移结构 迁移类通常会包含两个方法:up 和 down。up 方法可为数据库添加新的数据表、字段或索引,而 down 方法则是 up 方法的逆操作。...可以在这两个方法中使用 Laravel 数据库结构生成器来创建以及修改数据表。...::table("表名")->where(条件)->get(); 2.模型与数据表的绑定 创建Model类型,方法里面声明两个受保护属性:$table(表名)和$primaryKey(主键) <?...5.5 基础 Laravel 中文文档:Laravel 的数据库迁移 Migrations
php artisan make:migration create_table_test –table=test_a 修改表 Schema::table(‘te...
经过一番调研之后发现了一个堪称神器的扩展:laravel-upsert 这个 Laravel 扩展为查询构建器和 Eloquent 添加了对 INSERT & UPDATE (UPSERT) 和 INSERT...扩展的特性 安装 composer require staudenmeir/laravel-upsert:"^1.0" 用法 插入和更新 (UPSERT) 考虑这个users具有唯一username...您可以提供带有文字或原始表达式的列名和键值对(见下文)。...作为使用复合键和原始表达式的示例,请考虑以下表,该表计算每个帖子和每天的访问者: Schema :: create ( 'stats' , function ( Blueprint $ table )...LaravelUpsert\Eloquent\HasUpsertQueries; 因为我们数据库的时间是int类型,不是laravel默认的时间格式,并且我们的插入时间和更新时间也不是laravel默认的字段