Windows docker-compose安装

未匹配的标注

Logo

Packagist Total Downloads Awesome Laravel

LaravelAdmin

介绍

laravel-admin是一个可以快速帮你构建后台管理的工具,它提供丰富的页面组件和表单元素,还有即插即用的功能组件,通过简单的配置或使用少量的代码就实现完善的后台管理功能。(QQ群: 391528810)

Demo || 阅读文档

QQ群: 391528810

QQ群

特点

  • Laravel+Vue组合
  • SPA单页面应用
  • 前后端分离,后台只提供API接口,前端负责视图渲染
  • 开箱即用的laravel后台管理系统
  • 海量Vue组件直接拿来即用

截图

laravel-admin

软件架构

基于laravel框架实现前后端分离的单页面应用架构

使用相关技术:vue+bootstrap+phpswoole+docker+laravel

安装前准备

1. 提前安装好git(整套部署流程使用git方式部署,请依照文档通过git clone命令安装)

2. Windows安装请先手动安装好docker(电脑需支持Hyper-V),并执行命令docker-compose -v检查docker是否已安装成功

3. Windows注意要进入容器请在命令前加上”winpty “

4. Windows请手动设置下载源为国内镜像源

{
  "registry-mirrors" : [ "https://mirror.ccs.tencentyun.com", "http://registry.docker-cn.com", "http://docker.mirrors.ustc.edu.cn", "http://hub-mirror.c.163.com" ],  "insecure-registries" : [ "registry.docker-cn.com", "docker.mirrors.ustc.edu.cn" ],  "debug" : true,  "experimental" : true}

docker国内镜像设置

5. Windows的其它设置参照

Windows Docker设置1
Windows Docker设置2
Windows Docker设置3

6. 设置预将代码存放目录的上级目录跟”~“目录必须包含 dokcer的File Sharing列表中的目录中(Windows环境的”~“目录为”C:/Users/Administrator”)

我的Windows电脑只有一个C盘,直接选的C盘

docker共享盘设置

7. 上面内容设置到docker设置中后记得点应用

8. Windows环境请进入git bash命令行工具进行执行安装

进入git bash

安装教程

1. 下载代码

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文件(务必设置好mysql密码,redis密码)

  • 数据库连接用户请使用root,程序需要检查数据库是否存在并创建数据库,开发环境的代码生成是通过读取数据表结构进行代码生成的
cp .env.example .env
vi .env

3. 初始化安装

sh ./docker/install.sh

4. 请用phpstorm编辑器查看./docker/mysql/init.sql密码值是否存在换行问题,如有请处理一下,不然后面数据库连接不上

5. php容器环境中安装composer相关扩展包及项目代码初始化

如果安装”laravel/envoy”过程中失败请切换下全局镜像源,进行尝试

  • 腾讯云composer镜像源:mirrors.cloud.tencent.com/composer - 阿里云composer镜像源:mirrors.aliyun.com/composer - 华为云composer镜像源:mirrors.huaweicloud.com/repository... - laravel(中国)composer镜像源:packagist.laravel-china.org - phpcomposer:packagist.phpcomposer.com
    winpty docker-compose run --rm php composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer #设置镜像源
    winpty docker-compose run --rm php composer global require laravel/envoy -vvv #该命令出错了请切换镜像源
    winpty docker-compose run --rm php composer global dump-autoload
    winpty docker-compose run --rm node cnpm install #前端编译扩展包安装
    winpty docker-compose run --rm node npm run prod #编译前端页面js
    winpty docker-compose run --rm php chmod u+x docker/php/run.sh #启动命令添加执行权限
    winpty docker-compose run --rm php envoy run init --branch=master #项目初始化
    winpty docker-compose up -d #启动服务

执行命令winpty docker-compose ps显示php容器一直restart的状态是部分Windows docker对”docker/php/run.sh”的文件编码不能识别问题!请执行如下操作

winpty docker-compose down
winpty docker-compose run --rm php bash
mv docker/php/run.sh docker/php/run.sh.back
echo '' > docker/php/run.sh
cat docker/php/run.sh.back >> docker/php/run.sh
chmod u+x docker/php/run.sh
chmod 777 docker/php/run.sh
exit
winpty docker-compose up -d
winpty docker-compose ps

安装完成请在编辑器排除这两个目录防止编辑器被卡死

防止编辑器卡死

6. 系统已安装有nginx服务器导致端口(80,443)冲突依据如下进行配置

  • 将nginx容器暴露宿主机端口修改防止冲突
vim docker-compose.yml

宿主机暴露端口修改

  • 设置本机已有的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 127.0.0.1:81; #docker容器中运行的nginx设置成host.docker.internal:81 }}

7. 访问

本地开发环境绑定hosts后就可以进行访问了

127.0.0.1 local.laraveladmin.cn

登录用户名及密码参照.env中的”ADMIN_USER_NAME”,”ADMIN_PASSWORD”设置项
登录验证码使用的极验滑块验证(免费的),注册后在.env中进行配置

8. 开发环境前端实时编译启动

winpty docker-compose run --rm node npm run watch

9. 添加自己的代码仓库源

git remote remove origin
git remote add origin https://用户名:密码@gitee.com/自己代码仓库.git

10. 本地开发环境更新到laraveladmin最新代码

git pull laraveladmin master

11. 线上代码更新升级部署

docker-compose exec php envoy run update --branch=master

使用说明

1. 官网及相关文档: https://www.laraveladmin.cn

2. 在线示例演示环境: https://demo.laraveladmin.cn

用户名:demo_admin

密码:admin123456

参与贡献

1. Fork 本仓库
2. 新建 Feat_xxx 分支
3. 提交代码
4. 新建 Pull Request

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
发起讨论 查看所有版本


暂无话题~