LearnSite 是一个专为中小学信息技术课堂设计的开源教学辅助平台。它通过整合新课教学、作业提交、作品互评、课堂测验及资源管理等功能,将教师从繁重的批改与统计中解放出来,让教学更聚焦于课堂本身。
平台支持高度定制:教师可按需开关功能模块、调整界面,甚至绑定学生 IP 实现精细化管理。同时,活跃的社区持续推动其进化——2026 年初的更新已加入网页课件活动、物联网/人工智能体验(如人脸识别、AI 绘画)及在线协作工具,紧跟技术前沿。
- 学生平台:网站首页、我的课程、我的作品、常识测验、打字练习、资源下载
- 教师平台:上课、备课、作品、签到、学生、测验、打字、资源、信息、状态
- 系统后台:系统设置、班级设置、教师管理、新生导入、空间生成、学年升班、系统退出
- 多平台支持:Docker、Linux、Windows 全平台部署
- 丰富的教学工具:编程学习、AI 体验、Scratch 积木编程、在线协作表格等
- 完整的评价体系:作业互评、课堂表现、测验排行
- 智能管理:学生 IP 绑定、自动签到、成绩统计
使用 Docker 部署是最推荐的方式,支持一键部署和完整部署。
# 快速部署
bash <(curl -L https://gitee.com/realiy/learnsite-docker/raw/main/deploy.sh) --quick
# 自定义部署
bash <(curl -L https://gitee.com/realiy/learnsite-docker/raw/main/deploy.sh) -p YourPassword -w 8080# 克隆部署仓库
git clone https://gitee.com/realiy/learnsite-docker.git
cd learnsite-docker
# 启动服务
docker compose -f docker-compose.yml up -d
# 访问 http://localhost:8080更多部署方式(仅数据库、仅应用、健康检查等)请参考 learnsite-docker 部署仓库。
| 变量名 | 说明 | 默认值 |
|---|---|---|
DB_HOST |
数据库主机地址 | mssql |
DB_NAME |
数据库名称 | learnsite |
DB_USER |
数据库用户名 | sa |
DB_PASSWORD |
数据库密码 | YourStrong@Passw0rd123 |
MSSQL_SA_PASSWORD |
MSSQL SA 密码 | YourStrong@Passw0rd123 |
BRANCH |
源码分支 | dev |
更多环境变量请参考 learnsite-docker 部署仓库。
端口被占用? 修改 docker-compose.yml 中的端口映射:
ports:
- "8081:8080"数据库密码忘记? 修改 MSSQL_SA_PASSWORD 和 DB_PASSWORD,然后重启服务。
应用无法连接数据库? 检查 DB_HOST 是否正确、DB_PASSWORD 是否与 MSSQL_SA_PASSWORD 一致。
如何备份数据?
docker compose -f docker-compose.yml exec mssql /opt/mssql-tools/bin/sqlcmd -S localhost -U sa -P 'YourStrong@Passw0rd123' -Q "BACKUP DATABASE learnsite TO DISK='/var/opt/mssql/backup/learnsite.bak'"如何更新应用?
docker compose -f docker-compose.yml down && docker compose -f docker-compose.yml up -d如何备份应用数据?
tar -czf learnsite-backup.tar.gz ./app首次访问显示空白页?
- 访问
http://localhost:8080/upgrade.aspx进行初始化 - 按照提示完成数据库配置
- 初始化完成后重新访问主页
更多问题请参考 learnsite-docker 部署仓库。
1. 安装依赖
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install -y mono-complete mono-xsp4
# CentOS/RHEL
sudo yum install -y mono-complete mono-xsp42. 部署步骤
-
下载发布包
git clone https://gitee.com/nylon26/openlearnsite /var/www/openlearnsite
-
配置权限
sudo chown -R www-data:www-data /var/www/openlearnsite sudo chmod +x /var/www/openlearnsite
-
启动 XSP4 服务器
cd /var/www/openlearnsite xsp4 --port 8080 --address 0.0.0.0 --nonstop -
设置为系统服务 (可选) 创建
learnsite.service文件:[Unit] Description=LearnSite Web Application After=network.target [Service] WorkingDirectory=/var/www/openlearnsite ExecStart=/usr/bin/xsp4 --port 8080 --address 0.0.0.0 --nonstop Restart=always User=www-data [Install] WantedBy=multi-user.target
sudo systemctl enable learnsite.service sudo systemctl start learnsite.service
1. 安装依赖
- .NET Framework 4.8 (Windows 10/11 已内置)
- IIS (Internet Information Services)
- SQL Server (Express 版本即可)
2. 部署步骤
-
下载发布包 从 Gitee Releases 下载最新的
latest-v2.0.x_xxx.zip -
解压到 IIS 目录 解压到
C:\inetpub\wwwroot\openlearnsite -
配置 IIS
- 打开 IIS 管理器
- 创建新网站,指向
C:\inetpub\wwwroot\openlearnsite - 端口设置为 80 或其他可用端口
- 应用池设置为
.NET Framework v4.0
-
配置数据库
- 运行
sql/learnsite.sql创建数据库 - 修改
web.config中的连接字符串
- 运行
-
启动网站 在 IIS 管理器中启动网站
- LearnSite 学习平台讨论 QQ 群:5847120
- 官方网站:OpenLearnSite
- 原作者:温州水乡 Github
以下服务需要单独部署,作为 LearnSite 的扩展功能:
| 服务 | 技术栈 | 端口 | 说明 |
|---|---|---|---|
| DeepSeek AI | Flask + gevent | 5000 | AI 对话、OCR、语音合成 |
| LuckySheet 后端 | Python pywss | 8180 | 在线协同表格后端 |
| AI 图像风格化 | TensorFlow.js | - | 纯浏览器端画风迁移 |
| MQTT IoT | .NET | 1883/5000 | 物联网设备控制 |
- Gitee: LearnSite2.0
- 下一代LearnSite(规划中)
- Gitee:LearnSite 1.x 主仓库源码
- Gitee:LearnSite 1.x 成都版分支源码
- Github:learnsite-docker
- Gitee:learnsite-docker (同步 Github 镜像)
- Github Actions/Gitee 流水线 自动化编译与发布测试流 (Release latest 稳定版/alpha 预览测试版)
- Github Actions/Gitee 流水线 自动化 Windows 运行环境测试流
- Github Actions/Gitee 流水线 自动化 Linux 运行环境测试流
- Github Actions/Gitee 流水线 自动化 Docker 运行环境测试流
- 数据库备份增强与优化
- 适配 MySQL 数据库
- 适配 SQLite 数据库
- 适配 PostgreSQL 数据库
- 适配 Redis
- 适配插件中心(方便外挂自建服务如 easyvoice、peinture、飞象老师课件等)
- 代码精简与屎山优化(移除过时服务如 kindeditor)
- 使用现代化技术栈前后端重构
感谢所有为 LearnSite 项目做出贡献的开发者!
| 项目 | 仓库 | 贡献者 |
|---|---|---|
| 项目创始人 | WaterCountry | 温州水乡 |
| 代码贡献 | nylon26 | nylon26 |
| Docker 部署 | RealKiro / realiy | realiy |
| 代码贡献 | aymwoo | aymwoo |
| 代码贡献 | hylqb | hylqb |
| 代码贡献 | jnschool | jnschool |
| 代码贡献 | henggo | henggo |
| 代码贡献 | chinatianya | chinatianya |
LearnSite - 让信息技术教学更简单、更高效!