使用docker容器安装redmine插件

问题描述 投票:6回答:3

我可以使用这两个命令安装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 redmine-plugins
3个回答
9
投票

您可以通过添加其他数据卷来保留容器重新创建之间的插件。由于没有docker-compose的产卵码头容器很痛苦,让我用它来进一步解释。

1. Create docker-compose.yml describing your setup

它应该在一个单独的桥接网络中创建两个服务(每个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. Deploy your config

只需从放置配置文件的目录中运行docker-compose up -d即可。

3. Install your plugins (and themes) manually

使用docker ps找到运行Redmine的容器的名称;在我的系统上它是root_redmine_1。运行以下内容以附加到其中:

# docker exec -ti root_redmine_1 gosu redmine bash

它将为容器内的“redmine”用户打开一个shell。使用wgettar xjf下载并提取所需的插件。完成后退出shell。

4. Restart your instance to check if plugins work

施放docker restart root_redmine_1命令并查看它是否按预期工作。由于插件放在单独的数据卷上,因此它们也应该在容器重放中存活。


1
投票

无需解释Docker-composer级别的内容

version: '3'
services:

  redmine:
    image: redmine
    restart: always
    ports:
      - 3000:3000
    environment:
      - REDMINE_DB_MYSQL=redmine
      - REDMINE_DB_PASSWORD=pass
      - REDMINE_PLUGINS_MIGRATE=true
    volumes:
      - ./redmine_data:/usr/src/redmine/files
      - ./redmine-plugins:/usr/src/redmine/plugins

  mysql_redmine:
    image: mysql:5.7
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=pass
      - MYSQL_DATABASE=redmine
    volumes:
      - ./mysql-data_red:/var/lib/mysql 

环境变量REDMINE_PLUGINS_MIGRATE可以直接迁移你的插件!也没有必要进入容器

现在你只需要在git submodule add中使用./redmine-plugins和你的插件git存储库


0
投票
# if the name of the redmine container is abt then use the following command to login:
docker exec -it abt bash

# change to plugins directory
cd plugins

# download source code
wget https://redmine.ociotec.com/attachments/download/440/scrum%20v0.16.2.tar.gz

# extract
tar xvf scrum\ v0.16.2.tar.gz

# install
bundle exec rake redmine:plugins:migrate

# restart container: 
docker restart abt
© www.soinside.com 2019 - 2024. All rights reserved.