这个镜像已可用于生产环境。
目前仅支持 MySQL。
版本/标签
Redmine 5.1.2 (标签 5.1.2, latest )
基于 AlmaLinux 9 镜像。Ruby 版本 3.2.2。
Redmine 5.0.8 (标签 5.0.8 )
基于 AlmaLinux 9 镜像。Ruby 版本 3.1.4。
Redmine 4.2.11 (标签 4.2.11 )
基于 CentOS 7 镜像。Ruby 版本 2.7.8。
Redmine 3.3.3 (标签 3.3.3 )
这个旧版本在我们公司中使用,docker脚本最初是针对它开发的。
基于 CentOS 7 镜像。Ruby 版本 2.3.8。
您需要注意对于 MySQL 5.6 的启动选项 --innodb-large-prefix=ON --innodb-file-format=Barracuda
。如果没有这些选项,数据库迁移将失败。
使用方法
对于每个版本/标签,都有相关的 docker-compose.yml
文件和 config
文件夹。您可以通过单击标签的链接到Github存储库中查找它们。
请编辑 docker-compose.yml
、config/database.yml
和 initial.sql
中的数据库 用户名/密码:
- MySQL
root
用户:默认密码Password1
- MySQL
redmine
用户:默认密码Password2
对于版本 3.3.3 或 4.2.11,请编辑 docker-compose.yml
中的 LOCALE 环境变量以支持不同的语言,例如 LOCALE=zh_CN.UTF-8
。
请编辑 docker-compose.yml
中的卷映射。
- Redmine 数据:
/home/redmine
- MySQL 数据:
/home/mysql<version>_data
启动容器
然后可以使用 docker compose up -d
命令启动容器。脚本将自动创建 redmine
数据库并执行 rake db:migrate
、rake generate_secret_token
命令。
注意:如果您不想运行 rake db:migrage
而是自行导入数据库,请创建一个空文件 config/init_db.lock
。
完成设置后,您可以使用 docker ps
或 docker compose ps
命令检查容器的 healthy
状态,大约需要 2 分钟。
加载数据库默认数据集
您可能想要根据 https://www.redmine.org/projects/redmine/wiki/RedmineInstall#Step-7-Database-default-data-set 加载默认数据集。以下是步骤:
# 进入容器
docker exec -it -u service -w /var/www/html/redmine redmine bash
# 加载 .bash_profile
$ source ~/.bash_profile
# 加载默认数据集
$ RAILS_ENV=production REDMINE_LANG=zh bundle exec rake redmine:load_default_data
登录应用程序
使用默认管理员账户登录 http://127.0.0.1 :
- 登录名:
admin
- 密码:
admin
密钥
Docker 脚本生成了 SECRET_KEY_BASE
环境变量。如果您想重新生成它,可以执行以下命令:
docker exec -i redmine sed -i '/SECRET_KEY_BASE/d' /home/service/.bash_profile
docker exec -i redmine rm -f /var/www/html/redmine/config/init_secret.lock
docker exec -i redmine bash -c /start.sh
添加插件
例如,安装 redmine_agile。您注册了一个邮箱以获取免费版本的下载链接,并下载了 redmine_agile-x_x_x-light.zip。将此文件复制到 /home/redmine/plugins
(以我的情况为例),并执行以下命令:
# 进入容器
docker exec -it -u service -w /var/www/html/redmine redmine bash
# 加载 .bash_profile
$ source ~/.bash_profile
# 解压插件归档文件
$ cd plugins
$ unzip -a redmine_agile-x_x_x-light.zip
# 安装所需的 gem 包
$ cd ..
$ bundle install --without development test --no-deployment
# 迁移插件的数据表
$ bundle exec rake redmine:plugins NAME=redmine_agile RAILS_ENV=production
# 重启 Redmine 应用程序
$ touch tmp/restart.txt