<p align="center"> <img src="https://www.laraveladmin.cn/dist/img/logo1.png" width="200px" data-origin="httpw://www.laraveladmin.cn/dist/img/logo1.png" alt="Logo" style="width: 200px" /> </p> <p align="center"> <a href="https://gitee.com/laravel-admin/laraveladmin" target="_blank" rel="noopener"> <img src="https://img.shields.io/packagist/l/encore/laravel-admin.svg?maxAge=2592000" data-origin="https://img.shields.io/packagist/l/encore/laravel-admin.svg?maxAge=2592000" alt="Packagist"> </a> <a href="https://gitee.com/laravel-admin/laraveladmin" target="_blank" rel="noopener"> <img src="https://img.shields.io/packagist/dt/zsping1989/laravel-admin.svg?style=flat-square" data-origin="https://img.shields.io/packagist/dt/zsping1989/laravel-admin.svg?style=flat-square" alt="Total Downloads"> </a> <a href="https://gitee.com/laravel-admin/laraveladmin" target="_blank" rel="noopener"> <img src="https://img.shields.io/badge/Awesome-laraveladmin-green" data-origin="https://img.shields.io/badge/Awesome-laraveladmin-green" alt="Awesome Laravel"> </a> </p> # LaravelAdmin ## 项目简介 ### 简介说明 `laravel-admin`是一个可以快速帮你构建后台管理的工具,它提供丰富的页面组件和表单元素,还有即插即用的功能组件,通过简单的配置或使用少量的代码就实现完善的后台管理功能。 [Demo](https://demo.laraveladmin.cn) \|\| [阅读文档](https://www.laraveladmin.cn/home/index) **QQ群: `391528810`** <a target="_blank" href="https://qm.qq.com/cgi-bin/qm/qr?k=FbY7isqq9mvl0QYzKaSqubXWo75uwqnY&jump_from=webapi"><img border="0" src="//pub.idqqimg.com/wpa/images/group.png" alt="QQ群链接" title="QQ群链接"></a> ![QQ群](https://www.laraveladmin.cn/api/home/docs/images/QQ群.jpg) ### 功能特色 * Laravel+Vue+Bootstrap+Docker+phpswoole * SPA单页面应用 * 前后端分离,后台只提供API接口,前端负责视图渲染 * 开箱即用的laravel后台管理系统 * 海量Vue组件直接拿来即用 ### 功能截图 **首页** ![LaravelAdmin首页](https://www.laraveladmin.cn/storage/uploads/images/2020/12/05/kg3F2blsJISs6GbyFdmItHU7VKGLPx4zUIrPS0H6.jpeg) **登录页面** ![LaravelAdmin登录页面](https://www.laraveladmin.cn/api/home/docs/images/登录页面.jpg) **注册页面** ![LaravelAdmin注册页面](https://www.laraveladmin.cn/api/home/docs/images/注册页面.jpg) **忘记密码** ![LaravelAdmin忘记密码](https://www.laraveladmin.cn/api/home/docs/images/忘记密码.jpg) **开发辅助** ![LaravelAdmin开发辅助](https://www.laraveladmin.cn/api/home/docs/images/开发辅助.jpg) **列表页面** ![LaravelAdmin登录页面](https://www.laraveladmin.cn/api/home/docs/images/列表页面.jpg) **编辑页面** ![LaravelAdmin编辑页面](https://www.laraveladmin.cn/api/home/docs/images/页面编辑.jpg) **弹窗编辑** ![LaravelAdmin弹窗编辑](https://www.laraveladmin.cn/api/home/docs/images/弹窗编辑.jpg) **手机端适配** ![LaravelAdmin手机端适配](https://www.laraveladmin.cn/api/home/docs/images/手机端.jpg) **平板适配** ![LaravelAdmin平板适配](https://www.laraveladmin.cn/api/home/docs/images/pad屏幕.jpg) **编辑页面拖拽布局后反向更新代码** ![LaravelAdmin拖拽布局](https://www.laraveladmin.cn/api/home/docs/images/拖拽布局.gif) ## 环境部署 ### 不同环境 #### Windows环境安装请查看 [Windows安装](README_windows.md) #### 已有项目环境手动安装请查看 [手动安装](README_self.md) ### 准备工作 1. 提前安装好git(整套部署流程使用git方式部署,请依照文档通过git clone命令安装) ### 安装教程 1. 下载代码 ```shell git clone https://gitee.com/laravel-admin/laraveladmin.git cd laraveladmin git remote add laraveladmin https://gitee.com/laravel-admin/laraveladmin.git ``` 2. 参照.env.example配置[.env](env.md)文件(务必设置好mysql密码,redis密码) - 数据库连接用户请使用root,程序需要检查数据库是否存在并创建数据库,开发环境的代码生成是通过读取数据表结构进行代码生成的 ```shell cp .env.example .env vi .env ``` 3. 初始化安装 ```shell sh ./docker/install.sh ``` 4. 设置当前代码目录的上级目录跟"\~"目录必须包含 dokcer的File Sharing列表中的目录中 > 参考图 ![设置参考图](https://www.laraveladmin.cn/storage/uploads/images/2021/07/01/1zHz43xRs01Q4bO4LVd6yejMlBvv7AytHXEfveAB.jpg) 5. php容器环境中安装composer相关扩展包及项目代码初始化 > 如果安装"laravel/envoy"过程中失败请切换下全局镜像源,进行尝试 - 腾讯云composer镜像源:https://mirrors.cloud.tencent.com/composer - 阿里云composer镜像源:https://mirrors.aliyun.com/composer - 华为云composer镜像源:https://mirrors.huaweicloud.com/repository/php - laravel(中国)composer镜像源:https://packagist.laravel-china.org - phpcomposer:https://packagist.phpcomposer.com ```shell docker-compose run --rm php composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer #设置镜像源 docker-compose run --rm php composer global require laravel/envoy -vvv #该命令出错了请切换镜像源 docker-compose run --rm php composer global dump-autoload docker-compose run --rm node cnpm install #前端编译扩展包安装 docker-compose run --rm node npm run prod #编译前端页面js docker-compose run --rm php envoy run init --branch=master #项目初始化 docker-compose up -d #启动服务 ``` > 安装完成请在编辑器排除这两个目录防止编辑器被卡死 ![防止编辑器卡死](https://www.laraveladmin.cn/api/home/docs/images/防止编辑器卡顿.png) 6. 系统已安装有nginx服务器导致端口(80,443)冲突依据如下进行配置 - 将nginx容器暴露宿主机端口修改防止冲突 ```shell vim docker-compose.yml ``` ![宿主机暴露端口修改](https://www.laraveladmin.cn/storage/uploads/images/2020/12/28/jYgF3xITF8KGmqgDHTNtqOP6fZeAySo11Bih2mkY.jpeg) - 设置本机已有的nginx代理配置 ``` server { listen 80; server_name local.laraveladmin.cn; location / { proxy_http_version 1.1; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Real-PORT $remote_port; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header Scheme $scheme; proxy_set_header Server-Protocol $server_protocol; proxy_set_header Server-Name $server_name; proxy_set_header Server-Addr $server_addr; proxy_set_header Server-Port $server_port; proxy_pass http://127.0.0.1:81; #docker容器中运行的nginx设置成http://host.docker.internal:81 } } ``` 7. 访问 本地开发环境绑定hosts后就可以进行访问了 ``` 127.0.0.1 local.laraveladmin.cn ``` > 登录用户名及密码参照.env中的"ADMIN_USER_NAME","ADMIN_PASSWORD"设置项 > 登录验证码使用的极验滑块验证(免费的),注册后在.env中进行配置 8. 开发环境前端实时编译启动 ```shell docker-compose run --rm node npm run watch ``` 9. 添加自己的代码仓库源 ```shell git remote remove origin git remote add origin https://用户名:密码@gitee.com/自己代码仓库.git ``` 10. 本地开发环境更新到laraveladmin最新代码 ```shell git pull laraveladmin master ``` 11. 线上代码更新升级部署 ```shell docker-compose exec php envoy run update --branch=master ``` ## 使用说明 ### 目录结构 [可参考laravel目录结构](https://laravelacademy.org/post/9529.html) ### 更多说明 1. [官网及相关文档: https://www.laraveladmin.cn](https://www.laraveladmin.cn) 2. [在线示例演示环境: https://demo.laraveladmin.cn](https://demo.laraveladmin.cn) 用户名:demo_admin 密码:admin123456 ## 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request