开源项目管理工具Helper的安装及汉化

在这里插入图片描述

什么是 Helper ?

Helper 是基于 LaravelFilament 的开源项目管理工具。

官方提供了在线演示:https://project-helper.net

安装

在群晖上以 Docker 方式安装。

数据库理论上是可以使用群晖自带的 MariaDB 的,但老苏为了省事,采用了 docker-compose 方式安装了独立的 MySQL 容器。将下面的内容保存为 docker-compose.yml 文件

老苏折腾时,eloufirhatim/helper:latest 中,latest 对应的版本为 1.2.3

在这里插入图片描述

version: "3.3"

services:
  sqldb:
    image: mysql:5.7
    container_name: helper-mysql
    volumes:
      - ./data:/var/lib/mysql
    environment:
      - MYSQL_DATABASE=helper
      - MYSQL_USER=helper
      - MYSQL_PASSWORD=helper
      - MYSQL_ROOT_PASSWORD=helper
    command: --default-storage-engine innodb
    restart: unless-stopped
    healthcheck:
      test: mysqladmin -p$$MYSQL_ROOT_PASSWORD ping -h localhost
      interval: 20s
      start_period: 10s
      timeout: 10s
      retries: 3
  
  helper:
    image: eloufirhatim/helper:latest
    container_name: helper-server
    environment:
      - DB_CONNECTION=mysql
      - DB_HOST=sqldb
      - DB_PORT=3306
      - DB_DATABASE=helper
      - DB_USERNAME=helper
      - DB_PASSWORD=helper
      - MAIL_MAILER=smtp
      - MAIL_HOST=smtp.88.com
      - MAIL_PORT=25
      - MAIL_USERNAME=wbsu2003@88.com
      - MAIL_PASSWORD=<你的第三方邮件客户端密码>
      - MAIL_FROM_ADDRESS=wbsu2003@88.com
      - MAIL_ENCRYPTION=null
    depends_on:
      - sqldb
    restart: "no"
    ports:
      - 8114:8000
    volumes:
      - /etc/localtime:/etc/localtime
  • DB_:这是跟数据库设置相关的参数,除了 DB_PASSWORD ,你可以都使用默认值;
  • MAIL_:这是跟邮件相关的设置,一旦设置错误,注册用户什么的就会报错,但又没有好的调试手段,只能根据自己的邮箱慢慢试验,这是比较麻烦的地方。当然 88.com 邮箱,我已经帮大家踩过坑了

更多参数设置,请参考官方的文档:https://devaslanphp.github.io/project-management/#/installation?id=configuration

或者也可以去参考官方的 .env.example 文件:https://github.com/devaslanphp/project-management/blob/master/.env.example

然后执行下面的命令

# 新建文件夹 helper 和 子目录
mkdir -p /volume1/docker/helper/data

# 进入 helper 目录
cd /volume1/docker/helper

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d

在这里插入图片描述

设置

往常到这里就结束了,但是 Helper 平台提供服务之前,还需要做最后一步的数据库的安装和配置,否则会报错,例如注册的时候显示 👇 helper.users 表不存在这样的数据库错误

在这里插入图片描述

所以当你在 helper-server 容器日志中看到 INFO Server running on [http://0.0.0.0:8000]. 时,就可以开始下面的操作了

在这里插入图片描述

首先需要先进入容器

# 进入容器
docker exec -it helper-server /bin/bash

然后在容器中执行数据库命令

# 运行数据库迁移
php artisan migrate

在这里插入图片描述

接下来继续执行下面的命令

# 插入平台使用的默认用户、引用和权限
php artisan db:seed

# 退出容器
exit

这一步会创建默认管理员用户

  • 电子邮件地址:john.doe@helper.app
  • 密码:Passw@rd

在这里插入图片描述

运行

在浏览器中输入 http://群晖IP:8114 就能看到登录界面

在这里插入图片描述

你可以用默认的管理员用户登录,登录后的主界面

在这里插入图片描述

新建用户

在登录界面,点 create a new account 创建用户

注意密码不能少于 8 位;

在这里插入图片描述

第一次登陆,需要验证邮件

在这里插入图片描述

如果邮件设置没问题,应该很快就会收到邮件的

在这里插入图片描述

登录成功后的主界面非常简单,应该是没设置角色权限导致的

在这里插入图片描述

汉化

虽然 Helper 号称提供了60 多种语言可供使用,但居然没有中文。既然官方说是是用 google 翻译的,老苏也来试试

在这里插入图片描述

首先在当前目录下,再建一个 lang 目录

在这里插入图片描述

为什么是 fr 而不是 cn,是老苏不想修改 config/system.php 增加语言类型,所以将中文伪装成了法文

在这里插入图片描述

所涉及到的文件,是基于官方的 /lang/fr.json/lang/fr 汉化而来

语言包文件地址:https://github.com/devaslanphp/project-management/tree/master/lang

在这里插入图片描述

不过老苏使用了比谷歌翻译更简单准确的方法,那就是让 ChatGPT 来做这件事情

在这里插入图片描述

老苏翻译的语言包,下载地址:https://github.com/wbsu2003/synology/blob/main/Helper/lang.zip

下载后,解压到 helper/lang ,目录结构如下:

在这里插入图片描述

有两种办法来加载汉化包

  • 一种是直接挂载 lang 目录,但是这种方法,缺点是会导致除了法语外,选其他任何语言都会显示为英文;优点是你要是觉得哪里翻译的不好,可以自己修改文件;
  • 另一种是将 lang 目录通过 docker cp ./lang/. helper-server:/app/lang 复制到容器内,好处是每种语言都会有相应的显示,缺点是每次你改了都要重新覆盖一遍,重装了也是一样的;

这里就介绍第一种方法,在 docker-compose.yml 最后添加一行

	- ./lang:/app/lang

在这里插入图片描述

然后执行

# 一键停止
docker-compose down

# 一键启动
docker-compose up -d

进入 General --> Site Language,选择 FrenchSave 保存

在这里插入图片描述

刷新一下页面就能看到中文了

在这里插入图片描述

但还有显示英文或者法文的地方,这个老苏就没招了

在这里插入图片描述

参考文档

devaslanphp/project-management: An open source Project management tool based on Laravel and Filament
地址:https://github.com/devaslanphp/project-management

Helper - Documentation
地址:https://devaslanphp.github.io/project-management

Laravel Project Management Tool - EL OUFIR Hatim - Medium
地址:https://medium.com/@eloufirhatim/laravel-project-management-tool-c07eb140f769

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/118828.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

python获取电脑所连接的wifi密码

电脑连接wifi后&#xff0c;很难直观地看到当前连接wifi的密码&#xff0c;需要借助命令行公管局才可以查看到相关信息。 CMD命令 查看所有已保存的wifi配置信息 netsh wlan show profiles查看某一个wifi的详细信息&#xff0c;需要输入wifi名称来查询 netsh wlan show pro…

redis数据库基础知识

目录 redis数据库简介redis的版本redis数据类型先导知识一、redis数据库简介 Redis是一个基于键值(key-value)存储系统的非关系型数据库。它由Salvatore Sanfilippo开发,并使用ANSI C语言编写的开源数据库。Redis具有高性能和高并发处理能力,适用于实时的数据存储和访问需求…

【Unity ShaderGraph】| 快速制作一个 表面水纹叠加效果

前言 【Unity ShaderGraph】| 快速制作一个 表面水纹叠加效果一、效果展示二、表面水纹叠加效果三、应用实例 前言 本文将使用ShaderGraph制作一个表面水纹叠加效果&#xff0c;可以直接拿到项目中使用。对ShaderGraph还不了解的小伙伴可以参考这篇文章&#xff1a;【Unity Sh…

spring-boot中实现分片上传文件

一、上传文件基本实现 1、前端效果图展示&#xff0c;这里使用element-ui plus来展示样式效果 2、基础代码如下 <template><div><el-uploadref"uploadRef"class"upload-demo":limit"1":on-change"handleExceed":auto-…

还在按键进入BIOS?其实进入BIOS有更便捷的方法

在能够配置各种硬件参数之前,首先必须学习进入ASUS BIOS实用程序的正确方法。无论你面对的是PRIME、ROG、TUF GAMING还是任何其他型号,所涉及的步骤都是相同的。 华硕主板的BIOS访问键通常是“F2”或“Del”键。在启动或启动屏幕期间,只要ASUS徽标出现,就重复按下此键以进…

为什么说制造企业需要部署MES管理系统

在数字化浪潮席卷的今天&#xff0c;每个企业都期望通过新技术、新模式来优化自身的运营。这其中&#xff0c;MES管理系统成为了不少企业的首选。那么&#xff0c;为何企业需要部署MES管理系统&#xff1f;又该如何搭建MES管理系统呢&#xff1f; 一、企业缘何钟情于MES系统&am…

apache-maven-3.6.3 安装配置教程

链接&#xff1a;https://pan.baidu.com/s/1RkMXipnvac9EKcZyUStfGQ?pwdl32m 提取码&#xff1a;l32m 1. 将 maven 压缩包解压至指定文件夹 2. 配置环境变量 &#xff08;1&#xff09;打开此电脑-> 鼠标右键选择属性->点击高级系统设置 &#xff08;2&#xff09;点…

易云维®工厂能耗管理平台系统方案,保证运营质量,推动广东制造企业节能减排

我国《关于完整准确全面贯彻新发展理念推进碳达峰碳中和工作的实施意见》出台&#xff0c;提出了推进碳达峰碳中和工作的总体目标。到2025年&#xff0c;广东具备条件的地区、行业和企业率先实现碳达峰&#xff0c;为全省实现碳达峰、碳中和奠定坚实基础&#xff1b;2030年前实…

Qt 继承QAbstractListModel实现自定义ListModel

1.简介 QAbstractListModel类提供了一个抽象模型&#xff0c;可以将其子类化以创建一维列表模型。 QAbstractListModel为将其数据表示为简单的非层次项目序列的模型提供了一个标准接口。它不直接使用&#xff0c;但必须进行子类化。 由于该模型提供了比QAbstractItemModel更…

【广州华锐互动】3D全景虚拟旅游在文旅行业的应用场景

随着科技的不断发展&#xff0c;3D全景虚拟旅游正在成为一种新兴的旅游体验方式&#xff0c;它可以帮助旅游者更加深入地了解旅游信息&#xff0c;提升旅游体验。下面我们将详细介绍3D全景虚拟旅游可以应用于哪些场景。 一、旅游规划 3D全景虚拟旅游可以帮助旅游者更加直观地进…

Tomcat 9.0.x 源码编译

文章目录 一、克隆源码二、构建 Maven1&#xff09;在项目根目录中新建 pom.xml 文件2&#xff09;然后 Add Maven Projects 三、在目录中增加 home 目录四、增加启动配置五、其它问题1&#xff09;控制台乱码解决 2&#xff09;启动后访问 localhost:8080 报错解决 一、克隆源…

046_第三代软件开发-虚拟屏幕键盘

第三代软件开发-虚拟屏幕键盘 文章目录 第三代软件开发-虚拟屏幕键盘项目介绍虚拟屏幕键盘 关键字&#xff1a; Qt、 Qml、 虚拟键盘、 qtvirtualkeyboard、 自定义 项目介绍 欢迎来到我们的 QML & C 项目&#xff01;这个项目结合了 QML&#xff08;Qt Meta-Object L…

2014年亚太杯APMCM数学建模大赛A题无人机创造安全环境求解全过程文档及程序

2014年亚太杯APMCM数学建模大赛 A题 无人机创造安全环境 原题再现 20 国集团&#xff0c;又称 G20&#xff0c;是一个国际经济合作论坛。2016 年第 11 届 20 国集团峰会将在中国召开&#xff0c;这是继 APEC 后中国将举办的另一个大型峰会。此类大型峰会&#xff0c;举办城市…

L4级自动驾驶前装量产车型来了,小马智行与丰田联合打造

11月5日&#xff0c;小马智行与丰田汽车联合发布的首款纯电自动驾驶出租车&#xff08;Robotaxi&#xff09;概念车在第六届进博会亮相&#xff0c;该车型基于广汽丰田生产的bZ4X纯电车辆平台打造&#xff0c;将搭载小马智行研发的第七代L4级自动驾驶乘用车软硬件系统。 今年8月…

SpringBoot整合JUnit

1.创建新项目 说明&#xff1a;创建springboot_04_junit项目&#xff0c;选择对应的版本。 2.接口类 说明&#xff1a;新建BookDao接口。 package com.forever.dao;public interface BookDao {public void save(); }3.实现类 说明&#xff1a; 新建BookDaoImpl实现类。 pa…

餐饮加盟信息展示预约小程序的内容如何

餐饮业规模持续增加&#xff0c;相关从业者逐渐增多&#xff0c;对中等规模以上的餐饮品牌来说&#xff0c;当有一定规模后除了开多家直营店外&#xff0c;还会开放招商加盟&#xff0c;扩展品牌、提升营收等。 由于餐饮加盟属于准属性业务&#xff0c;因此传统线下方式不太适…

HomeAssistant添加HACS插件并实现公网控制米家,HomeKit等智能家居

HomeAssistant添加HACS插件并实现公网控制米家&#xff0c;HomeKit等智能家居 文章目录 HomeAssistant添加HACS插件并实现公网控制米家&#xff0c;HomeKit等智能家居基本条件一、下载HACS源码二、添加HACS集成三、绑定米家设备 ​ 上文介绍了如何实现群晖Docker部署HomeAssist…

3.27每日一题(常系数线性非齐次方程的特解)

常系数非齐次线性方程的特解如何假设&#xff08;两种&#xff09;形式&#xff1a; 1、题目中 e 的 x 次幂以及 1&#xff0c;都是第一种&#xff1a;1可以看成为e的0次幂 注&#xff1a;题目给的多项式是特殊的形式&#xff0c;我们要设为一般的形式的多项式 2、题目中sin…

【MySQL基本功系列】第一篇 先熟悉MySQL的运行逻辑

​ 我将推出一系列关于MySQL的博客文章&#xff0c;涵盖了从入门到深入底层的原理。这些文章将包括MySQL的运行逻辑、InnoDB存储引擎、SQL优化、undo log、bin log等多个方面的知识。希望这些文章能为你提供宝贵的信息和洞见&#xff0c;并帮助你更好地理解和应用MySQL。同时&a…

gma 1.x 气候气象指数计算源代码(分享)

本模块的主要内建子模块如下&#xff1a; 如何获得完整代码&#xff1a; 回复博主 或者 留言/私信 。 注意&#xff1a;本代码完全开源&#xff0c;可随意修改使用。 但如果您的成果使用或参考了本段代码&#xff0c;给予一定的引用说明&#xff08;非强制&#xff09;&#xf…