——5分钟搭建开源项目管理平台
无论是个人任务追踪还是团队敏捷协作,Redmine作为开源项目管理工具,以其灵活的问题跟踪、甘特图和时间管理功能广受欢迎。本文将手把手教你通过Docker在Linux/macOS上5分钟完成Redmine部署,避免环境依赖的繁琐配置,实现开箱即用。
一、为什么用Docker部署Redmine?
- 跨平台一致性:Linux/macOS/Win统一部署流程
- 环境隔离:避免Ruby/Gem版本冲突
- 快速重置:容器删除即可全新安装
- 扩展便捷:轻松挂载插件和主题
二、准备工作
1. 基础环境
系统 | 要求 |
---|---|
Linux | Docker CE 20.10+,docker-compose 1.29+(安装指南) |
macOS | Docker Desktop 4.8+(下载地址) |
2. 验证安装
docker --version # 输出:Docker version 24.0.7
docker-compose --version # 输出:Docker Compose version v2.21.0
三、单命令极简部署(适合快速体验)
使用官方Redmine镜像+SQLite数据库:
docker run -d \
--name redmine-quick \
-p 8080:3000 \
-v redmine_data:/usr/src/redmine/files \
redmine:5.0-alpine
访问:http://localhost:8080
默认账号:admin/admin
(首次登录强制修改密码)
💡 优缺点:
- ✅ 优点:30秒启动,零配置
- ❌ 缺点:SQLite不适合生产环境
四、生产级部署(Docker Compose + MySQL)
1. 创建项目目录
mkdir redmine-docker && cd redmine-docker
touch docker-compose.yml
2. 编写docker-compose.yml
version: '3.8'
services:
db:
image: mysql:8.0
environment:
MYSQL_ROOT_PASSWORD: "rootpass123" # 生产环境务必修改!
MYSQL_DATABASE: redmine
MYSQL_USER: redmine
MYSQL_PASSWORD: "redminepass123"
volumes:
- mysql_data:/var/lib/mysql
command:
--default-authentication-plugin=mysql_native_password # 兼容旧客户端
redmine:
image: redmine:5.0.5
ports:
- "3000:3000"
environment:
REDMINE_DB_MYSQL: db
REDMINE_DB_USERNAME: redmine
REDMINE_DB_PASSWORD: "redminepass123"
volumes:
- redmine_files:/usr/src/redmine/files
- ./plugins:/usr/src/redmine/plugins # 插件目录
- ./themes:/usr/src/redmine/public/themes # 主题目录
depends_on:
- db
volumes:
mysql_data:
redmine_files:
3. 启动服务
docker-compose up -d # 后台启动
观察日志:docker-compose logs -f redmine
4. 访问与初始化
- 打开浏览器访问:
- Linux:
http://localhost:3000
- macOS:
http://host.docker.internal:3000
(Docker Desktop特殊域名)
- Linux:
- 使用默认账号登录:
admin/admin
- 立即修改管理员密码
五、常用运维操作
1. 数据备份
# 备份数据库
docker exec redmine-docker_db_1 sh -c 'exec mysqldump -uredmine -p"redminepass123" redmine' > redmine_db_$(date +%F).sql
# 备份附件
tar czvf redmine_files_$(date +%F).tar.gz redmine_files/
2. 插件安装(示例:敏捷看板插件)
# 进入插件目录
cd plugins
# 下载插件
git clone https://github.com/redmine/redmine_agile.git
# 重启Redmine容器
docker-compose restart redmine
3. 主题更换
- 下载主题到
themes
目录:cd themes git clone https://github.com/makotokw/redmine-theme-gitmike.git gitmike
- 在Redmine后台:管理 → 设置 → 显示 → 主题 中选择
Gitmike
六、性能优化配置
1. 调整MySQL参数
在docker-compose.yml
的db
服务下添加:
environment:
...
MYSQL_INNODB_BUFFER_POOL_SIZE: 512M # 根据内存调整
volumes:
- ./my.cnf:/etc/mysql/conf.d/custom.cnf # 挂载自定义配置
2. 启用Redmine缓存
在Redmine容器环境变量添加:
environment:
...
REDMINE_CACHE_STORE: memcache # 使用Memcached
MEMCACHE_SERVERS: memcached:11211 # 需额外部署Memcached服务
3. 资源限制(防止OOM)
redmine:
...
deploy:
resources:
limits:
cpus: '1.0'
memory: 2G
七、故障排查
1. 常见问题
现象 | 解决方案 |
---|---|
启动时数据库连接失败 | 检查depends_on 顺序,增加健康检查重试 |
插件安装后报错 | 查看日志docker-compose logs redmine |
上传附件权限拒绝 | 确保挂载目录权限:chmod 777 redmine_files |
macOS访问缓慢 | 在Docker Desktop设置中增加内存至4G+ |
2. 日志分析命令
# 实时查看Redmine日志
docker-compose logs -f redmine
# 查看MySQL错误日志
docker exec -it redmine-docker_db_1 tail -f /var/log/mysql/error.log
八、升级Redmine版本
# 停止旧容器
docker-compose down
# 备份数据(参考第五节)
...
# 修改docker-compose.yml中的镜像版本
image: redmine:5.1.2 # 升级到新版本
# 重新启动
docker-compose up -d
结语:为什么选择Docker化Redmine?
通过Docker部署Redmine,你获得:
- 5分钟极速搭建:告别Ruby环境配置噩梦
- 版本可控:自由切换Redmine版本
- 数据安全:卷挂载确保持久化存储
- 生态扩展:无缝集成插件/主题
无论你是个人开发者还是团队管理员,这份指南都能助你快速构建可靠的项目管理平台。
扩展阅读:
提示:生产环境务必修改默认密码,并配置HTTPS加密访问!
本文来自博客园,作者:茄子_2008,转载请注明原文链接:https://www.cnblogs.com/xd502djj/p/18935492