本例中使用的是sameersbn docker-redmine。使用其它镜像安装的Redmine,备份、恢复方法可能会不同。
之前已经介绍了手动备份、恢复Docker部署的Redmine项目管理系统的方法,对备份、恢复过程有所了解。下面接着看一下如何自动创建备份文件。
手动备份、恢复方法
在运行Redmine容器的代码上,加入BACKUP相关参数。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
docker run --name=redmine -d \
--link=postgresql-redmine:postgresql --publish=80:80 --publish=443:443\
--env SMTP_METHOD=smtp \
--env SMTP_STARTTLS=true \
--env SMTP_HOST=smtp.qiye.aliyun.com \
--env SMTP_PORT=465 \
--env SMTP_DOMAIN=aliyun.com \
--env SMTP_AUTHENTICATION=:login \
--env SMTP_USER=redmine@aliyun.com \
--env SMTP_PASS=aliyun.com \
--env REDMINE_BACKUP_SCHEDULE=daily \
--env REDMINE_BACKUP_EXPIRY=604800 \
--env REDMINE_BACKUP_TIME=18:30 \
--volume=/srv/docker/redmine/redmine:/home/redmine/data \
--volume=/srv/docker/redmine/redmine-logs:/var/log/redmine/ \
sameersbn/redmine:latest
|
注意,上边的代码中,需要把邮箱部分换成自己的信息。
简单解释
1
2
3
|
--env REDMINE_BACKUP_SCHEDULE=daily \ 每天备份一次
--env REDMINE_BACKUP_EXPIRY=604800 \ 单位是秒,即只保留7天的备份文件
--env REDMINE_BACKUP_TIME=18:30 \ 执行时间。在国内需要加上8个小时,实际自动备份时间在凌晨2:30
|
由于在生成容器时挂了卷,
1
|
--volume=/srv/docker/redmine/redmine:/home/redmine/data \
|
所以,在宿主机上的
1
|
/srv/docker/redmine/redmine/backups
|
目录下能找到自动生成的备份文件,包含了系统数据、附件、主题等内容。
每天自动备份,以备不时之需。