10分钟快速上手Moments极简朋友圈的完整部署指南【免费下载链接】moments极简朋友圈项目地址: https://gitcode.com/gh_mirrors/mom/moments想要拥有一个属于自己的极简朋友圈吗Moments是一款开源的极简朋友圈应用让你在10分钟内就能搭建起个人社交空间。这款应用采用现代化的技术栈支持Markdown语法、多用户管理、文件上传等丰富功能是搭建个人博客、朋友圈或轻量社交平台的完美选择。 什么是Moments极简朋友圈Moments是一个基于Go语言和Vue.js构建的极简朋友圈系统它提供了类似微信朋友圈的体验但完全由你自己掌控。你可以把它部署在自己的服务器上创建个人社交空间记录生活点滴分享给朋友或保持私密。核心功能亮点✅Markdown支持使用熟悉的Markdown语法编写内容✅多用户系统支持用户注册和管理员后台✅文件上传支持图片、视频上传自动生成缩略图✅标签分类方便整理和查找内容✅外部引用支持豆瓣读书、电影、音乐等外部内容✅评论点赞完整的社交互动功能✅暗黑模式支持夜间浏览体验 三种快速部署方式方式一Docker CLI一键部署最推荐这是最简单快速的部署方式只需要一条命令即可启动docker run -d \ -e PORT3000 \ -e JWT_KEYyour_secret_key_here \ -p 3000:3000 \ -v /var/moments:/app/data \ --name moments \ kingwrcy/moments:latest参数说明PORT3000应用监听端口JWT_KEY安全密钥必须设置/var/moments:/app/data数据持久化目录kingwrcy/moments:latest官方最新镜像方式二Docker Compose编排部署如果你更喜欢使用Docker Compose可以创建docker-compose.yml文件version: 3.8 services: moments: image: kingwrcy/moments:latest container_name: moments restart: always environment: PORT: 3000 JWT_KEY: ${JWT_KEY} ports: - 3000:3000 volumes: - ./data:/app/data然后运行export JWT_KEYyour_secret_key_here docker-compose up -d方式三直接运行可执行文件对于没有Docker环境的情况可以直接下载可执行文件从发布页面下载对应系统的二进制文件解压并运行./moments 关键配置说明JWT密钥生成JWT_KEY是保证应用安全的关键可以通过以下方式生成方法1使用OpenSSL推荐openssl rand -hex 32方法2使用随机数生成echo $RANDOM | sha256sum环境变量配置Moments支持通过环境变量进行灵活配置变量名说明默认值PORT应用监听端口3000JWT_KEYJWT认证密钥随机生成DBSQLite数据库路径/app/data/db.sqliteUPLOAD_DIR文件上传目录/app/data/uploadLOG_LEVEL日志级别info创建.env文件进行配置JWT_KEYyour_generated_secret_key LOG_LEVELinfo 首次使用指南1. 访问应用部署完成后在浏览器中访问http://你的服务器IP:30002. 管理员登录默认管理员账号用户名admin密码a1234563. 修改密码登录后立即前往后台修改默认密码确保账户安全。4. 开始发布内容现在你可以✍️ 发布第一条Memo支持Markdown 上传图片和视频️ 添加标签分类 引用豆瓣内容 管理用户权限⚙️ 高级功能配置文件存储设置Moments支持两种文件存储方式本地存储默认文件存储在服务器本地目录自动生成缩略图支持文件去重秒传功能S3兼容存储支持AWS S3、MinIO等兼容服务配置环境变量启用S3_ENDPOINTyour_s3_endpoint S3_ACCESS_KEYyour_access_key S3_SECRET_KEYyour_secret_key S3_BUCKETyour_bucket_name邮件通知开启邮件通知功能及时获取评论提醒MAIL_HOSTsmtp.example.com MAIL_PORT587 MAIL_USERyour_emailexample.com MAIL_PASSyour_passwordRSS订阅每个用户都有独立的RSS订阅地址方便读者通过RSS阅读器订阅更新。 开发与定制技术架构后端Go 1.23.3使用Echo框架前端Nuxt 3 Vue 3使用TypeScript数据库SQLite轻量级无需额外安装构建工具Makefile提供便捷命令开发环境搭建# 克隆项目 git clone https://link.gitcode.com/i/d6fa9f9efda9eb38aed9f50bb434ed6e.git # 启动后端开发服务 cd moments make backend-dev # 启动前端开发服务新终端 make frontend-install make frontend-dev项目结构概览moments/ ├── backend/ # Go后端代码 │ ├── handler/ # 请求处理器 │ ├── db/ # 数据库模型 │ └── vo/ # 值对象定义 ├── front/ # Nuxt前端代码 │ ├── components/ # Vue组件 │ ├── pages/ # 页面路由 │ └── public/ # 静态资源 └── docker-compose.yml # Docker编排配置️ 常见问题解答Q: 部署后无法访问A:检查防火墙设置确保3000端口已开放# 查看端口监听状态 netstat -tlnp | grep 3000 # 开放端口Ubuntu sudo ufw allow 3000Q: 如何备份数据A:数据存储在/app/data目录中定期备份该目录即可# 备份数据 tar -czf moments_backup_$(date %Y%m%d).tar.gz /var/moments/Q: 如何更新到新版本A:使用Docker更新非常简单# 停止并删除旧容器 docker stop moments docker rm moments # 拉取最新镜像并重新运行 docker pull kingwrcy/moments:latest # 重新执行部署命令Q: 支持多语言吗A:目前主要支持中文界面但代码结构清晰易于扩展多语言支持。 性能与扩展性能特点快速启动Go编译的二进制文件启动迅速低内存占用SQLite数据库轻量高效响应式设计适配各种设备屏幕实时更新内容更新即时可见扩展建议增加CDN为静态文件配置CDN加速配置HTTPS使用Nginx反向代理配置SSL证书监控告警配合Prometheus监控应用状态定期备份设置数据库自动备份任务 开始你的极简朋友圈之旅Moments极简朋友圈为你提供了一个完全自主控制的社交空间。无论是记录个人生活、分享技术心得还是建立小型社区它都能满足你的需求。立即行动选择适合你的部署方式生成安全的JWT密钥启动应用并登录开始发布你的第一条Memo记住默认的管理员密码是a123456登录后请务必修改现在就去创建属于你自己的极简朋友圈吧提示更多详细配置和高级功能请参考项目文档。如果在使用过程中遇到问题欢迎在项目讨论区寻求帮助。【免费下载链接】moments极简朋友圈项目地址: https://gitcode.com/gh_mirrors/mom/moments创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考