我可以使用这 2 个命令安装 redmine。
docker run --name myred1 -e MYSQL_ROOT_PASSWORD=india -e MYSQL_DATABASE=redmine -v /my/custom:/etc/mysql/conf.d -v /storage/mysql/datadir:/var/lib/mysql -d mysql:5.6
docker run --name abt -p 3000:3000 -v /my/own/datadir:/usr/src/redmine/files --link myred1:mysql -d redmine
但是我该如何安装 scrum 插件呢?
http://www.redmine.org/plugins/scrum-plugin
根据安装说明...
从插件页面的文件部分下载。
与任何Redmine插件一样,只需将其部署在plugins文件夹中,确保文件夹名称为scrum,然后运行:
bundle exec rake redmine:plugins:migrate
我在命令提示符下(在 docker 容器内)尝试了上述命令
root@d7b535b9c607:/usr/src/redmine/plugins/scrum# bundle exec rake redmine:plugins:migrate
(in /usr/src/redmine)
但它不安装插件。
最佳答案
您可以在容器重新创建之间保留插件,方法是添加额外的数据卷来保留它们。由于在没有 docker-compose
的情况下生成 docker 容器很痛苦,让我用它来进一步解释。
1。创建 docker-compose.yml
描述您的设置
它应该在一个单独的桥接网络中创建两个服务(MySQL 和 Redmine 各一个):
version: '2'
networks:
redmine-network:
volumes:
redmine-plugins:
redmine-themes:
redmine-data:
services:
mysql-for-redmine:
image: mysql:5.6
networks:
- redmine-network
volumes:
# Consider using separate volume containers
# instead of host directory mounts.
- /my/custom:/etc/mysql/conf.d
- /storage/mysql/datadir:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: "<india>"
MYSQL_DATABASE: "redmine"
redmine:
image: redmine:3.3-passenger
ports:
- 3000:3000
networks:
- redmine-network
volumes:
- redmine-plugins:/usr/src/redmine/plugins
- redmine-themes:/usr/src/redmine/public/themes
- redmine-data:/usr/src/redmine/files
environment:
# Host name matches the MySQL container name.
REDMINE_DB_MYSQL: "mysql-for-redmine"
REDMINE_DB_USERNAME: "root"
REDMINE_DB_PASSWORD: "<india>"
REDMINE_SECRET_KEY_BASE: "..."
restart: always
2。部署你的配置
只需从您放置配置文件的目录中运行 docker-compose up -d
。
3。手动安装插件(和主题)
使用 docker ps
查找运行 Redmine 的容器的名称;在我的系统上它是 root_redmine_1
。运行以下命令附加到其中:
# docker exec -ti root_redmine_1 gosu redmine bash
它将为容器内的“redmine”用户打开一个外壳。使用 wget
和 tar xjf
下载并解压您需要的插件。完成后退出 shell。
4。重新启动您的实例以检查插件是否工作
Cast docker restart root_redmine_1
命令并查看它是否按预期工作。由于插件放置在单独的数据卷上,因此它们也应该能够在容器重新创建后继续存在。
关于docker - 使用 docker 容器安装 redmine 插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43424994/