给群晖弄个漂亮的导航页(上)

部署篇

还是在群晖上以 Docker 方式安装。

在注册表中搜索 webstack-Laravel ,选择 arvon2014/webstack-laravel,下载镜像。

title

安装比较简单,端口如果不冲突,可以直接用默认的 8000 ,只要修改环境中的几个参数即可。

参数说明

参数 说明
INSTALL_DIR 容器内的部署目录
DB_HOST 数据库地址,默认127.0.0.1
DB_PORT 数据库端口,默认3306
DB_DATABASE 数据库名称,默认homestead
DB_USERNAME 数据库用户名,默认homestead
DB_PASSWORD 数据库密码,默认secret
LOGIN_COPTCHA 是否启动控制台验证码,默认true

环境

请根据实际情况填写相应的内容,我在群晖已经安装了 MariaDB 5,所以可以直接用。

title

设置

直接启动容器,右键进入「详情」

title

「终端机」 => 「新增」 => 「通过命令启动」=> 「请输入一个命令」=> 「sh」

title

进入命令行模式。后文中如无特别说明,所有命令都在这个模式下执行。

title

1
2
#生成 KEY
php artisan key:generate

title

phpMyAdminMariaDB 数据库中新建用户和库,勾选「创建与用户同名的数据库并授予所有权限」

title

1
2
#迁移数据
php artisan migrate:refresh --seed

title

重启容器!重启容器!重启容器!否则页面会有错误信息。

前端

前端地址:http://群晖IP:8000/

title

后台

后台地址:http://群晖IP:8000/admin
默认账号:admin
默认密码:admin

title

排错

问题1:数据库报错

类似这样的问题

title

这需要我们先建好 homestead 库。

其他还可能会遇到数据库权限等问题,需要我们根据提示仔细排查。

问题2:网页报错

遇到下面这种情况

title

需要执行生成 KEY 操作

1
2
#生成 KEY
php artisan key:generate

这个 KEY 会写入到 .env 文件的 APP_KEY 字段

title

进阶篇

图标显示异常

title

后台中图片显示异常,需要我们将 .envAPP_URL= 后面的 http://localhost 删除

1
2
# 编辑环境文件
vi .env

title

保存退出后,需重启容器才能生效

支持 https

需要修改 admin.php 文件

1
2
# 编辑 config/admin.php 文件 中 'https' => env('ADMIN_HTTPS', true),
vi config/admin.php

title

保存退出后,需重启容器才能生效

修改 composer 镜像源

由于默认情况下执行 composer 各种命令是去国外的 composer 官方镜像源获取需要安装的具体软件信息,所以在不使用代理、不翻墙的情况下,从国内访问国外服务器的速度相对比较慢

1
2
# 更换阿里巴巴提供的 Composer 全量镜像源
composer config repo.packagist composer https://mirrors.aliyun.com/composer/

插件应用

laravel-admin 支持安装扩展工具来帮助丰富你的后台功能,目前在https://laravel-admin.org/extensions 下面已经有了几十个扩展可供安装使用。

文件管理插件

基于web接口的本地文件管理插件,代码主页:https://github.com/laravel-admin-extensions/media-manager

1
2
# 安装插件
composer require laravel-admin-ext/media-manager -vvv

title

1
2
# 导入插件
php artisan admin:import media-manager

title

编辑 config/admin.php,增加下列内容

1
2
3
4
5
6
7
8
9
/* media-manager */
'extensions' => [

'media-manager' => [

// Select a local disk that you configured in `config/filesystem.php`
'disk' => 'public'
],
],

刷新后台页面,菜单栏会多出 Media manager ,打开地址: http://localhost/admin/media

title

汉化插件

一个将操作按钮汉化的插件

代码主页:https://github.com/xiaoxuan6/laravel-admin-grid

生效前

title

生效后

title

1
2
3
4
5
6
7
8
9
# 安装依赖
composer require james.xue/laravel-admin-sortable

# 安装插件
Laravel-Admin >= 1.7 安装 1.2.0
composer require james.xue/laravel-admin-grid:1.2.0

# Laravel-Admin < 1.7 安装 1.1.0
composer require james.xue/laravel-admin-grid:1.1.0

title

参考文档

WebStack-Laravel官方代码
地址:https://github.com/hui-ho/WebStack-Laravel

Webstack网址导航
地址:https://github.com/WebStackPage/WebStackPage.github.io

后台框架:laravel-admin
地址:https://github.com/z-song/laravel-admin

在 Synology NAS 上使用 Laravel Framework
地址:http://sammixoft.blogspot.com/2018/01/synology-nas-laravel-framework.html

laravel-admin自动生成模块,及相关基础配置
地址:https://blog.csdn.net/qq_36100763/article/details/83089818