使用 Docker 部署企业培训系统 PlayEdu

1)PlayEdu 介绍

官网:https://www.playedu.xyz/
GitHub:https://github.com/PlayEdu/PlayEdu

PlayEdu 是一款适用于搭建内部培训平台的开源系统,旨在为企业/机构打造自己品牌的内部培训平台。PlayEdu 基于 Java + MySQL 开发;采用前后端分离模式;前端采用 React18 为核心框架,后端采用 SpringBoot3 为核心框架。提供部门管理、学员管理、在线视频学习、学员进度追踪、视频私有化存储等培训主要功能。

PlayEdu 分为 开源版企业版,企业版本在开源功能的基础上提供了包括视频云端存储、视频加密、音频学习、文档(PDF|WORD|PPT)在线学习、在线考试、学习计划培训等功能。

image.png

2)Docker 安装

在 Linux 服务器上以 Docker 方式安装。

// 1) 低版本 Docker 安装
yum install docker -y----
// < '推荐' >
// 2) 高版本 Docker 安装
curl -fsSL https://get.docker.com/ | sh----
// 关闭防火墙
systemctl disable --now firewalld
setenforce 0// 启用 Docker
systemctl enable --now docker----
// 3) 安装 Docker-Compose
curl -L https://github.com/docker/compose/releases/download/v2.2.2/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose -v

image.png

采用 docker-compose 部署,将下面的内容保存为 docker-compose.yml 文件

vim docker-compose.ymlversion: "3.5"services:playedu:image: registry.cn-hangzhou.aliyuncs.com/playedu/light:1.5.2container_name: playedu-webrestart: alwaysports:- "9805:80"- "9806:9800"- "9807:9801"- "9808:9900"volumes:- ./nginx:/var/log/nginxenvironment:- DB_HOST=mysql- DB_PORT=3306- DB_NAME=playedu- DB_USER=root- DB_PASS=playeduxyz- REDIS_HOST=redis- REDIS_PASS=playeduxyz- REDIS_PORT=6379- REDIS_DB=2- SA_TOKEN_IS_CONCURRENT=false- SA_TOKEN_JWT_SECRET_KEY=playeduxyzdepends_on:- mysql- redis- minioredis:image: rediscontainer_name: playedu-redisrestart: alwaysvolumes:- ./redis:/datamysql:image: mysql:5.7container_name: playedu-mysqlrestart: alwaysvolumes:- ./mysql:/var/lib/mysqlenvironment:- MYSQL_DATABASE=playedu- MYSQL_ROOT_PASSWORD=playeduxyz- TZ=UTCminio:image: bitnami/minio:latestcontainer_name: playedu-miniorestart: alwaysports:- "9809:9000"- "9810:9001"volumes:- ./minio:/bitnami/minio/dataenvironment:- MINIO_ROOT_USER=username- MINIO_ROOT_PASSWORD=password- MINIO_DEFAULT_BUCKETS=playedu:public

然后执行下面的命令

# 新建文件夹 playedu 和 子目录
mkdir -p /data/docker/playedu/{minio,mysql,nginx,redis}# 进入 playedu 目录
cd /data/docker/playedu# 修改 minio 目录权限
chmod a+rwx minio# 将 docker-compose.yml 放入当前目录
cp ~/docker-compose.yml .# 一键启动
docker-compose up -d

image.png

# 验证容器
docker ps -a# 验证端口
netstat -nltp

image.png
image.png

3)PlayEdu 运行

PlayEdu 有多个应用入口

平台地址默认账号密码
API 服务http://你的服务器IP:9700--
PC 学员端口http://你的服务器IP:9800--
H5 学员端口http://你的服务器IP:9801--
后台管理端口http://你的服务器IP:9900admin@playedu.xyzplayedu
MinIO 管理端口http://你的服务器IP:50002usernamepassword

3.1)API 服务

在浏览器中输入 http://你的服务器IP:9805 只能看到 系统正在运行中…,因为这个端口提供的是 API 服务,而不是 Web 服务

企业微信截图_17031507949388.png

3.2)后台管理

在浏览器中输入 http://你的服务器IP:9808 就能看登录界面

image.png

默认的管理员账号:admin@playedu.xyz,密码:playedu

image.png

进入 系统设置 --> 系统配置 --> MinIO存储 设置存储

配置项需要配置的值
AccessKeyusername
SecretKeypassword
Bucketplayedu
Endpointhttp://你的服务器IP:9809
Domainhttp://你的服务器IP:9809

image.png

设置完成后,可以上传资源进行验证,如果 资源管理 中上传显示 系统错误,说明 minio 设置还存在问题

通过 学员管理添加学员,为学员 设置部门、账号、密码 等信息

需要先 创建部门

image.png

不过我想应该不会有人这样一个一个的添加,应该会使用 批量导入学员 才对
( 或者基于 LDAP 认证配置 )

image.png

3.3)PC 学员端

在浏览器中输入 http://你的服务器IP:9806 就能看登录界面

image.png

使用学员账号登录

image.png

3.4)H5 学员端

**H5 页面 **适合移动端,在手机浏览器中输入 http://你的服务器IP:9807 就能看登录界面

( **注意:**H5 页面的端口号为 9807

09b1b5fcd7736d6dca3427c6e1a27b0.jpg
ebff35f3549384d09b9c7e52e294166.jpg

3.5)个性化配置

image.png

3.6)MinIO 管理端

MinlO 管理后台:http://10.0.59.114:9810/login

这个主要用于调试,公网使用的话不建议对外暴露
**账户:**username
**密码:**password

image.png
image.png

4)新手入门

此文档为 PlayEdu 开源版使用手册,以下是 PlayEdu 开源版基础操作步骤:

步骤一:创建分类

功能:分类贯穿资源素材、线上课程,便于归纳以及快速筛选,分类支持无限级拓展。
操作:进入后台管理,点击左侧菜单栏栏中的「分类管理」,点击「新建分类」按钮。如需创建一级分类,所属上级默认为“作为一级分类”,如需创建二级分类,所属上级字段选择已创建过的一级分类。

步骤二:上传资源

功能:支持视频、图片、附件资源,用来组成课程相关内容。
操作:进入后台管理,点击左侧菜单栏中的「资源管理」,点击相应的资源类型上传支持的格式文件。如需将资源上传时直接分类,可选择已创建的分类之后,再上传文件。

步骤三:创建部门

功能:创建企业中部门架构,以便进行课程的批量指派,支持无限级分类拓展。(注意:在开源版本的课程的指派中,父级部门和子部门是相互独立的,指派父级部门并不会自动包含子部门。如果需要全部指派,请同时选择相关的父级部门和子部门)
操作:进入后台管理,点击左侧菜单栏栏中的「学员管理」,展开点击「部门」,点击「新建部门」按钮。如需创建一级部门,所属上级默认为“作为一级部门”,如需创建子部门,所属上级字段选择已创建过的一级部门。

步骤四:添加学员

功能:学员账号在后台手动创建,或者下载学员模板批量导入。
操作:进入后台管理,点击左侧菜单栏栏中的「学员管理,展开点击「学员」,点击「添加学员」,填写学员信息完成账号创建(其中学员所属部门支持多选),学员在学员端登录账号学习。

步骤五:新建课程

功能:创建并指派课程给学习部门后,该部门的学员将在学员端看到该课程,并可以进行学习。
操作:进入后台管理,点击左侧菜单栏栏中的「课程中心,展开点击「线上课」,点击「新建课程」,填写课程信息-指派学习部门-添加课程内容-完成课程创建(其中指派部门支持多选)。

步骤六:学员学习

以上步骤完成后,学员便可以登录学员端开始学习所属指派范围内的课程了,后台课程详情中会实时跟踪学员的学习数据。

4)参考文档

地址:https://www.playedu.xyz/
地址:https://www.playedu.xyz/book
地址:https://github.com/PlayEdu/PlayEdu
地址:https://gitee.com/playeduxyz/compose

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

zookeeper安装和启动

镜像下载地址&#xff1a;https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/ 解压后将 conf 目录下的 zoo_sample.cfg 重命名为 zoo.cfg&#xff0c; 配置 admin.serverPort&#xff0c;防止跟 Tomcat 端口冲突 # 发送心跳的时间间隔 tickTime2000 # 集群中的follower服…

docker的应用和定义

Docker是一种开源的容器化平台&#xff0c;可以使用Docker容器来打包&#xff0c;分发和运行应用程序。它允许开发人员使用容器来将应用程序及其所有依赖项打包到一个可移植的容器中&#xff0c;使其可以在任何环境中运行&#xff0c;而不会受到环境差异或依赖问题的影响。 使…

python调取一欧易API并写一个比特币均线交易策略

比特币均线交易策略是一种基于比特币价格的移动均线的交易策略。它通过计算不同时间段的移动均线来确定买入和卖出点。 具体步骤如下&#xff1a; 确定要使用的均线。常用的均线包括5日、10日、20日、50日和200日均线。较短的均线可以更快地反应价格变动&#xff0c;而较长的均…

Android R修改wifi热点默认为隐藏热点以及禁止自动关闭热点

前言 Android R系统中WLAN 热点设置里面默认是没有wifi热点的隐藏设置选项的,如果默认wifi热点为隐藏热点可以修改代码实现。另外wifi热点设置选项里面有个自动关闭热点,这个选项默认是打开的,有些机器里面配置wifi热点后默认是需要关闭掉的,以免自动关闭后要手动打开。 …

实施之全网最最最详细安装系统,步骤清晰明了带图片(老毛桃ultraiso硬盘安装)

目录 一.老毛桃安装系统 1.1 制作启动U盘 1.2装机 二.ultraiso安装系统 2.1 制作启动U盘 2.2 装机 三、硬盘安装 一.老毛桃安装系统 1.1 制作启动U盘 1.1.1 准备 准备一个16G以上的U盘备份U盘重要文件&#xff0c;制作过程中会格式化U盘。本软件涉及对可移动磁盘的读写操作…

算法基础之欧拉函数

欧拉函数 核心思想&#xff1a;欧拉函数: 证明 &#xff1a;容斥原理 #include<iostream>#include<algorithm>using namespace std;const int N 110;int main(){int n;cin>>n;while(n--){int a;cin>>a;int res a;for(int i 2;i < a/i; i){if(a %…

Lammps错误:domain too large for neighbor bins

关注 M r . m a t e r i a l , \color{Violet} \rm Mr.material\ , Mr.material , 更 \color{red}{更} 更 多 \color{blue}{多} 多 精 \color{orange}{精} 精 彩 \color{green}{彩} 彩&#xff01; 主要专栏内容包括&#xff1a; †《LAMMPS小技巧》&#xff1a; ‾ \textbf…

智能优化算法应用:基于人工水母算法3D无线传感器网络(WSN)覆盖优化 - 附代码

智能优化算法应用&#xff1a;基于人工水母算法3D无线传感器网络(WSN)覆盖优化 - 附代码 文章目录 智能优化算法应用&#xff1a;基于人工水母算法3D无线传感器网络(WSN)覆盖优化 - 附代码1.无线传感网络节点模型2.覆盖数学模型及分析3.人工水母算法4.实验参数设定5.算法结果6.…

uml网上选课系统 报告+mdl.zip

网上选课系统 一、实验目的 软件工程课程设计是软件工程专业一个综合性的实践教学环节&#xff0c;其目的在于促进学生复习和巩固计算机软件设计知识&#xff0c;加深对软件设计方法、软件设计技术和设计思想的理解&#xff0c;并能运用所学软件设计知识和面向对象技术进行综合…

redis 实现队列

一 使用场景 在一些场景&#xff0c;项目已发布了一段时间了&#xff0c;只是需要完善或优化一些功能要用到队列&#xff0c;但不想改动太大&#xff08;或者不想在安装第三方MQ组件框架&#xff09;的情况下可以用redis实现队列 。 二 redis实现队列 1 redis有序队列 使用red…

在打日志时,如何使用snowflake-id快速方便得随机获取query的唯一id

步骤一&#xff1a;安装snowflake-id pip install snowflake-id步骤二&#xff1a;代码示例 from snowflake import SnowflakeGeneratorgen SnowflakeGenerator(42)for i in range(100):val next(gen)print(val)参考文档&#xff1a; https://pypi.org/project/snowflake-…

Linux 命令行调试WiFi

参考&#xff1a; Linux&#xff1a;命令行调试WiFi&#xff08;iwlist/iwconfig/iw/wpa_supplicant/wpa_cli/dhcp/hostapd/hostapd_cli的使用方法&#xff09;-CSDN博客 iwlist wlan0 scan[ning] 列出WiFi扫描结果 iwlist wlan0 ap/accesspoint/peers 列出热点信息 iwl…

Scrum敏捷转型机构哪家好推荐

对于企业而言&#xff0c;敏捷转型是提升竞争力、适应市场变化的重要手段。为了实现这一目标&#xff0c;许多知名的培训公司提供了专业的敏捷培训课程和认证。其中&#xff0c;Leangoo领歌以其全面的敏捷研发管理解决方案和多种认证课程而备受认可。 1、Leangoo领歌&#xff…

CentOS6.10 卸载MySQL8.0.34升级至8.0.35

准备要更新的MySQL安装包,下载地址:MySQL :: Download MySQL Community Server 查看当前MySQL版本 备份数据库 mysqldump -uroot -p -B > /opt/backup/20231220_mysql.sql 检查备份文件 查看所有服务项: service --status-all 可以看到我们注册的MySQL服务是mysqld 停止…

Vue - 基于Element UI封装一个表格动态列组件

1 组件需求背景 在后台管理系统中&#xff0c;表格的使用频率非常高&#xff0c;统一封装表格动态列组件并全局注册使用&#xff0c;可大大提升代码的复用性和可维护性。 2 全局注册 src/plugins/index.js&#xff1a; import columns from ./columns/indexexport default …

el-date-picker日期时间插件只允许选择年月日小时并做可选择范围限制(精确到小时的范围)

一、首先明确下这个需求 1、要求只能选择年月日时,不要分钟和秒 2、根据后台返回的开始时间和天数设置可选择的开始时间和结束时间范围(包含小时)比如后台返回的开始时间是2023-12-20 13:24:30,天数365天,那么我们需要限制当前可选日期为2023-12-20 14时(不能选小于13:2…

嵌入式系统复习--ARM指令集(一)

文章目录 上一篇ARM指令集概述ARM寻址方式下一篇 上一篇 嵌入式系统复习–ARM技术概述 ARM指令集概述 ARM指令集是32位的&#xff0c;程序的启动都是从ARM指令集开始。 指令编码 第一操作数 第二操作数 目的操作数 条件影响标志位 不同功能实现的二进制位 指令编码 第…

银行敏捷转型对员工有哪些要求,供参考

银行进行敏捷转型时&#xff0c;对员工通常有一些要求和期望&#xff1a; 灵活性和适应性&#xff1a; 员工需要具备适应快速变化和不断迭代的工作环境的能力。他们需要对变化持开放态度&#xff0c;并愿意适应敏捷方法所带来的灵活性。 跨职能团队合作&#xff1a; 敏捷转型强…

华清远见嵌入式学习——ARM——作业2

目录 作业要求&#xff1a; 现象&#xff1a; 代码&#xff1a; 思维导图&#xff1a; 模拟面试题&#xff1a; 作业要求&#xff1a; GPIO实验——3颗LED灯的流水灯实现 现象&#xff1a; 代码&#xff1a; .text .global _start _start: /************对led1的设置****…

Java8新特性 Stream

首先创建一个用户的实体类&#xff0c;包括姓名、年龄、性别、地址、赏金 几个属性 Data public class User {//姓名private String name;//年龄private Integer age;//性别private Integer sex;//地址private String address;//赏金private BigDecimal money;public User(St…