Instalando o Redmine via Docker

Atualizado em: 22 de julho de 2022.

Neste repositório do GitHub tem um tutorial para executar o Redmine no Docker.

Segundo o tutorial, o Redmine é executado usando um conteiner Docker, o que deixa a instalação bem simples e rapidamente você tem o serviço funcionando.

Se você não sabe o que é Docker, recomendo começar lendo os links desta página. É um longo caminho, mas vale a pena conhecer essa tecnologia.

http://blog.aeciopires.com/palestra-transportando-as-aplicacoes-entre-varios-ambientes-com-docker/
http://blog.aeciopires.com/primeiros-passos-com-docker/

Também dou curso de Docker: http://blog.aeciopires.com/curso-docker

Abaixo tem o tutorial customizado para iniciar o conteiner Redmine e MySQL persistindo os dados.

1) Crie o diretório de dados do MySQL.

sudo mkdir -p /docker/redmine/mysql/data;

2) Crie o diretório de dados, plugins e temas do Redmine.

sudo mkdir -p /docker/redmine/data;
sudo mkdir -p /docker/redmine/plugins;
sudo mkdir -p /docker/redmine/themes;
sudo chmod -R 775 /docker/redmine;

3) Inicie o conteiner docker do MySQL com o banco de dados para o Redmine.

MYSQL_VERSION="8";

docker run -d --name mysql-redmine \
--restart always \
-p 3306:3306 \
-v /docker/redmine/mysql/data:/var/lib/mysql \
-e MYSQL_HOST=172.17.0.1 \
-e MYSQL_ROOT_PASSWORD=secret \
-e MYSQL_DATABASE=redmine \
-e MYSQL_USER=redmine \
-e MYSQL_PASSWORD=redmine \
-e MYSQL_ROOT_HOST='%' \
mysql:$MYSQL_VERSION --default-authentication-plugin=mysql_native_password

4) Inicie o conteiner docker do Redmine acessando o banco de dados criado no MySQL.

REDMINE_VERSION="4.2";

docker run -d --name redmine \
 -p 3001:3000 \
 -v /docker/redmine/data:/usr/src/redmine/files \
 -v /docker/redmine/plugins:/usr/src/redmine/plugins \
 -v /docker/redmine/themes:/usr/src/redmine/themes \
 -e REDMINE_DB_MYSQL=172.17.0.1 \
 -e REDMINE_DB_PORT=3306 \
 -e REDMINE_DB_USERNAME=redmine \
 -e REDMINE_DB_PASSWORD=redmine \
 -e REDMINE_DB_DATABASE=redmine \
 -e REDMINE_DB_ENCODING=utf8 \
 redmine:$REDMINE_VERSION

5) O log pode ser visualizado com os comandos abaixo.

docker logs redmine
docker logs mysql-redmine

6) Aguarde até visualizar o trecho abaixo no log do Redmine. Isso pode demorar uns 5 minutos,

[2017-08-16 12:14:46] INFO WEBrick 1.3.1
[2017-08-16 12:14:46] INFO ruby 2.4.1 (2017-03-22) [x86_64-linux]
[2017-08-16 12:14:46] INFO WEBrick::HTTPServer#start: pid=1 port=3000

8) Acesse o Redmine na URL http://IP-Servidor:3001. O login é admin e a senha padrão é admin.

9) Se quiser parar o conteiner, é só executar o comando abaixo.

docker stop redmine
docker stop mysql-redmine

10) Para iniciá-lo novamente, execute o comando abaixo.

docker start mysql-redmine
docker start redmine

Mais informações sobre o Redmine e como configurá-lo, acesse os links abaixo.

Se precisar fazer o dump de todos os bancos de dados do conteiner MySQL criado anteriormente, use o comando abaixo.
docker exec mysql-redmine sh -c 'exec mysqldump redmine -uroot -p"$MYSQL_ROOT_PASSWORD"' > /home/redmine.sql
Lembrando que os dados do banco são persistidos no diretório /opt/docker/mysql/redmine/data do Docker Host no qual o conteiner está sendo executado.
Se precisar restaurar o dump, use os comandos abaixo.
Remova o banco antigo e criando-o novamente.
docker exec -i -t mysql-redmine /bin/bash

root@4f39b60a2dde:/# mysql -u root -p
Enter password: 

mysql> drop database redmine;
mysql> create database redmine;
mysql> quit

root@4f39b60a2dde:/# exit

Restaure o dump no banco novo.

docker stop redmine
docker exec -i mysql-redmine /usr/bin/mysql -uroot -psecret --database=redmine < /home/redmine.sql
docker start redmine
ou
docker stop redmine
cat /home/redmine.sql | docker exec mysql-redmine sh -c 'exec /usr/bin/mysql -u root --password="$MYSQL_ROOT_PASSWORD" redmine'
docker start redmine

9 comentários em “Instalando o Redmine via Docker

  • Fala Aécio, tudo certo amigo, com exceção da imagem do mysql que se você não especificar a versão 5.7, está baixando a última versão e dando alguns erros de permissão.
    O comando run da imagem ficaria:
    sudo docker run -d –name mysql-redmine \
    -p 3306:3306 \
    -v /opt/docker/mysql/data:/var/lib/mysql \
    -e MYSQL_ROOT_PASSWORD=secret \
    -e MYSQL_DATABASE=redmine \
    mysql:5.7

    Valeu abraço!

  • Boa noite, Thiago!

    Obrigado pela correção. Já ajustei no tutorial.

    Abraço e fica com Deus

  • Olá Aércio, quando eu executo o
    docker run -d –name redmine \
    -p 3001:3000 \
    -v /opt/docker/redmine/data:/usr/src/redmine/files \
    -v /opt/docker/redmine/plugins:/usr/src/redmine/plugins \
    -v /opt/docker/redmine/themes:/usr/src/redmine/themes \
    –link mysql-redmine:mysql \
    redmine

    apresenta o seguinte error:

    docker: Error response from daemon: Cannot link to a non running container: /mysql-redmine AS /redmine/mysqlredmine.

  • Bom dia, Alex!

    Este tutorial foi publicado em 2017. De lá para cá, as coisas mudaram e a forma de iniciar o conteiner do MySQL e do Redmine mudaram também.

    Eu li a documentação, testei e atualizei o tutorial para contemplar a nova forma de instalar.

    Tente novamente seguindo as novas instruções.

    Abraço e fica com Deus.

  • Aério, a página de plugins apresenta a mensagem “Nenhuma informação disponível”. Eu teria que instalar os plugins manualmente ou deveria ter uma lista que eu vou clicando em instalar direto no Redmine?

  • Olá, Guilherme!

    A instalação de plugins no Redmine é realizada de forma manual mesmo e cada plugin tem um jeito diferente de instalar e configurar. Recomendo olhar a documentação de cada plugin que deseja utilizar.

    Abraço.

  • Apesar de antigo, em poucos passos(alterações) funciona perfeitamente com em 2021 nas versões latest.

  • Oi, Thiago!

    Muito obrigado pelo feedback.
    Que bom que o tutorial lhe foi útil.
    Atualizei o tutorial para dar suporte a versão 4.1 do Redmine e deixar a instalação mais flexível.

    Abraço.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *