Skip to content

Latest commit

 

History

History
85 lines (64 loc) · 3.48 KB

README.md

File metadata and controls

85 lines (64 loc) · 3.48 KB

coolshare

CoolShare - 轻量级代码片段分享工具

English | 简体中文

License PRs Welcome

简介

CoolShare 是一款轻量级、易用的代码片段分享工具,旨在帮助个人和团队快速搭建内部代码协作共享平台。

特性

  • 开箱即用: 无需复杂配置,即可快速部署使用。
  • 简单轻量: 基于 Flask 框架,简洁易懂。
  • 代码高亮: 支持代码语法高亮显示,方便阅读。
  • 分享期限: 可设置代码片段的分享期限,到期自动失效。
  • 访问限制: 可配置请求频率限制,防止滥用。

项目结构

│  
├── app/
│   ├── app.py             # Flask 应用主文件
│   ├── templates/         # HTML 模板文件
│   │   ├── index.html     # 首页模板
│   │   ├── view.html      # 代码片段查看页面模板
│   ├── static/            # 静态资源文件
│   │   ├── style.css      # 样式文件
│   │   ├── script.js     # JavaScript 文件
├── readme.md              # 项目说明文档
├── requirements.txt       # Python 依赖库列表
├── Dockerfile            # Docker 构建文件

Docker 部署

  1. 暴露 5000 端口
  2. 持久化 /app/coolshare.db 数据库 (可选)
  3. 配置环境变量 (可选)

示例:

# 基础部署
docker run -d --name coolshare --restart always -p 5000:5000 utopeadia/coolshare:latest

# 持久化数据库
docker run -d --name coolshare --restart always -p 5000:5000 -v ~/coolshare/coolshare.db:/app/coolshare.db utopeadia/coolshare:latest

# 配置环境变量
docker run -d --name coolshare --restart always -p 5000:5000 -v ~/coolshare/coolshare.db:/app/coolshare.db -e MAX_SHARE_TIME=100 utopeadia/coolshare:latest

环境变量

环境变量名 说明 是否必须 默认值
MAX_SHARE_TIME 最长分享时间,单位分钟 false 4320
REQUEST_LIMIT 时间窗口内限制创建和删除总数量 false 24
TIME_WINDOW 时间窗口,单位秒 false 60
CLEANUP_INTERVAL_MINUTES 执行 IP 计数器和数据库清理任务定时,单位分钟 false 30
PENALTY_DURATION 基础的惩罚时长,每次超过限制,惩罚时长翻倍,单位分钟 false 5
MAX_CACHE_SIZE 计数器最大缓存值 false 1000

截图

首页 代码分享 代码查看 404 页面

许可协议

本项目采用 GPLv3 协议开源,详情请参阅 LICENSE 文件。