使用docker容器安装redmine插件

sha*_*nuo 7 redmine-plugins docker

我可以使用这两个命令安装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
Run Code Online (Sandbox Code Playgroud)

但是如何安装scrum插件?

http://www.redmine.org/plugins/scrum-plugin

根据安装说明......

从插件页面的"文件"部分下载.

与任何Redmine插件一样,只需将其部署在plugins文件夹中,确保文件夹名称只是scrum,然后运行:

bundle exec rake redmine:plugins:migrate
Run Code Online (Sandbox Code Playgroud)

我在命令提示符下尝试了上面的命令(在docker容器中)

root@d7b535b9c607:/usr/src/redmine/plugins/scrum# bundle exec rake redmine:plugins:migrate
(in /usr/src/redmine)
Run Code Online (Sandbox Code Playgroud)

但它没有安装插件.

fir*_*iku 12

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

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
Run Code Online (Sandbox Code Playgroud)

2.部署配置

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

3.手动安装插件(和主题)

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

# docker exec -ti root_redmine_1 gosu redmine bash
Run Code Online (Sandbox Code Playgroud)

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

4.重新启动实例以检查插件是否有效

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


小智 5

无需解释在 docker-composer 级别所说的内容

version: '3'
services:

  redmine:
    image: redmine
    restart: always
    ports:
      - 3000:3000
    environment:
      - REDMINE_DB_MYSQL=mysql_redmine
      - REDMINE_DB_USERNAME=root
      - 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 
Run Code Online (Sandbox Code Playgroud)

环境变量REDMINE_PLUGINS_MIGRATE提供了直接迁移插件的可能性!也不需要进入容器

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