单程序部署
概述
单程序部署是沐霖工时管理系统最简单、最推荐的部署方式。前端资源完全嵌入到后端二进制文件中,只需一个可执行文件即可运行整个系统。
优势
- ✅ 单文件部署:只需一个可执行文件
- ✅ 零前端配置:前端资源已嵌入后端
- ✅ 快速启动:配置数据库后即可运行
- ✅ 易于分发:方便打包和分发
- ✅ 跨平台:支持 Windows、Linux、macOS
部署步骤
第一步:获取二进制文件
方式一:从 Release 页面下载
访问项目的 GitHub Releases 页面,下载最新版本的二进制包:
- Windows:
mulin-windows-amd64.zip - Linux:
mulin-linux-amd64.tar.gz - macOS:
mulin-darwin-amd64.tar.gz
方式二:从公众号下载
关注「沐霖工时管理系统」微信公众号,在菜单栏选择**“沐霖工时系统下载”**,即可获取最新版本的二进制包。
公众号信息:
- 公众号名称: 沐霖工时管理系统
- 公众号ID: wuyusoft
二维码:

操作步骤:
- 使用微信扫描下方二维码
- 关注公众号
- 在底部菜单栏选择"沐霖工时系统下载"
- 根据提示获取最新版本
公众号优势:
- 📱 手机随时下载
- 💬 获取最新版本通知
- 📖 接收使用教程和技巧
- 🔔 及时获取更新推送
第二步:准备环境
环境要求
- MySQL: 8.0+
- Redis: 6.0+
请确保 MySQL 和 Redis 服务已经安装并正常运行。
第三步:创建数据库
sql
-- 登录 MySQL
mysql -u root -p
-- 创建数据库
CREATE DATABASE mulin_cost DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- 退出
exit;1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
第四步:配置系统
解压下载的压缩包,进入目录后编辑 application.yaml 文件:
yaml
# 数据库配置
db:
host: localhost
port: 3306
user: root
password: your_password
name: mulin_cost
maxIdleConns: 10
maxOpenConns: 100
# Redis 配置
redis:
host: localhost
port: 6379
password: ""
db: 0
# 服务配置
server:
port: 8080
mode: release # debug 或 release1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
第五步:启动系统
Windows
bash
# 直接运行
mulin.exe
# 或者后台运行
start /b mulin.exe1
2
3
4
5
2
3
4
5
Linux/macOS
bash
# 添加执行权限
chmod +x mulin
# 直接运行
./mulin
# 或者后台运行
nohup ./mulin &1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
第六步:访问系统
打开浏览器访问:
http://localhost:80801
默认管理员账号:
- 用户名: admin
- 密码: 12345678
注意:首次登录后请立即修改密码!
使用 systemd 管理(Linux)
创建服务文件:
bash
sudo vim /etc/systemd/system/mulin.service1
内容如下:
ini
[Unit]
Description=沐霖工时管理系统
After=network.target mysql.service redis.service
[Service]
Type=simple
User=www
WorkingDirectory=/opt/mulin
ExecStart=/opt/mulin/mulin
Restart=on-failure
RestartSec=5
[Install]
WantedBy=multi-user.target1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
启动服务:
bash
# 重新加载配置
sudo systemctl daemon-reload
# 启动服务
sudo systemctl start mulin
# 设置开机自启
sudo systemctl enable mulin
# 查看状态
sudo systemctl status mulin
# 查看日志
sudo journalctl -u mulin -f1
2
3
4
5
6
7
8
9
10
11
12
13
14
2
3
4
5
6
7
8
9
10
11
12
13
14
使用 Nginx 反向代理(可选)
如果需要通过域名访问,可以配置 Nginx 反向代理:
nginx
server {
listen 80;
server_name your-domain.com;
location / {
proxy_pass http://localhost:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
配置 HTTPS(可选)
使用 Let's Encrypt 免费 SSL 证书:
bash
# 安装 certbot
sudo apt-get install certbot python3-certbot-nginx
# 获取证书
sudo certbot --nginx -d your-domain.com
# 自动续期
sudo certbot renew --dry-run1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
数据备份
备份 MySQL 数据库
bash
# 备份
mysqldump -u root -p mulin_cost > backup_$(date +%Y%m%d).sql
# 恢复
mysql -u root -p mulin_cost < backup_20240101.sql1
2
3
4
5
2
3
4
5
备份上传文件
bash
# 备份上传目录
tar -czf uploads_backup_$(date +%Y%m%d).tar.gz uploads/
# 恢复
tar -xzf uploads_backup_20240101.tar.gz1
2
3
4
5
2
3
4
5
常见问题
Q: 启动后无法访问?
A: 检查以下几点:
- 确认端口 8080 未被占用
- 检查防火墙设置
- 查看日志文件
logs/app.log
Q: 数据库连接失败?
A: 确认:
- MySQL 服务已启动
- 数据库已创建
- 用户名密码正确
- 数据库用户有足够权限
Q: Redis 连接失败?
A: 确认:
- Redis 服务已启动
- 端口 6379 可访问
- 密码配置正确(如果有)
Q: 如何修改端口?
A: 编辑 application.yaml,修改 server.port 配置项。
Q: 如何查看日志?
A: 日志文件位于 logs/app.log,可以使用以下命令查看:
bash
tail -f logs/app.log1
升级系统
- 停止当前运行的服务
- 备份数据库和上传文件
- 替换新的二进制文件
- 检查配置文件是否有更新
- 重新启动服务
bash
# 停止服务
sudo systemctl stop mulin
# 备份
mysqldump -u root -p mulin_cost > backup.sql
# 替换二进制文件
cp new-mulin /opt/mulin/mulin
# 启动服务
sudo systemctl start mulin1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
下一步
- 查看 Docker 部署 了解容器化部署
- 查看 Docker Compose 部署 了解一键部署
- 查看 快速开始 了解系统使用
