Atualizando uma instalação baseada em Docker do OTOBO

Para executar o OTOBO no Docker, precisamos do próprio software OTOBO e de um ambiente no qual o OTOBO possa ser executado. A imagem OTOBO Docker fornece o ambiente e uma cópia do software OTOBO. O próprio software é instalado no volume otobo_opt_otobo. Um volume nomeado é usado porque os dados de tempo de execução, por exemplo, arquivos de configuração e pacotes instalados, são armazenados na mesma árvore de diretório.

Ao atualizar para uma nova versão do OTOBO, várias coisas precisam acontecer.

  • Os arquivos Docker Compose devem ser atualizados.
  • O arquivo de configuração .env do Docker Compose deve ser verificado.
  • A nova imagem do Docker deve ser buscada.
  • O volume otobo_opt_otobo deve ser atualizado.
  • Algumas tarefas de manutenção devem ser executadas.

Nota

Nos comandos de exemplos abaixo, a versão 10.x.y, correspondente à tag 10_x_y, é usada como a versão de exemplo. Substitua-o pela versão real, por ex. 10.0.7.

Aviso

Estas instruções se aplicam apenas ao OTOBO 10.0.6 ou posterior.

Atualizar os arquivos Docker Compose

Os arquivos OTOBO Docker Compose podem mudar entre as versões. Portanto, deve-se ter certeza de que a configuração correta é usada.

Nota

Veja https://hub.docker.com/repository/docker/rotheross/otobo/tags os lançamentos disponíveis.

# Change to the otobo docker directory
docker_admin> cd /opt/otobo-docker

# Get the latest tags
docker-admin> git pull --tags

# Update OTOBO docker-compose repository to version 10.x.y.
docker-admin> git checkout rel-10_x_y

Verificando o arquivo Docker Compose .env

O arquivo .env controla o contêiner do Docker OTOBO. Nesse arquivo, as variáveis OTOBO_IMAGE_OTOBO, OTOBO_IMAGE_OTOBO_ELASTICSEARCH, e OTOBO_IMAGE_OTOBO_NGINX declaram quais imagens são usadas. As imagens mais recentes são usadas quando essas variáveis não são definidas. Se você quiser usar uma versão específica, defina essas variáveis de acordo.

Busque as novas imagens do Docker

O Docker compose pode ser usado para buscar as imagens desejadas em https://hub.docker.com/repository/docker/rotheross/.

# Change to the otobo docker directory
docker_admin> cd /opt/otobo-docker

# fetch the new images, either 'latest' or the specific version declared in .env
docker_admin> docker-compose pull

Atualize o OTOBO

Nesta etapa, o volume otobo_opt_otobo é atualizado e os seguintes comandos do console OTOBO são executados:

  • Admin::Package::ReinstallAll
  • Admin::Package::UpgradeAll
  • Maint::Config::Rebuild
  • Maint::Cache::Delete
# stop and remove the containers, but keep the named volumes
docker_admin> docker-compose down

# copy the OTOBO software, while containers are still stopped
docker_admin> docker-compose run --no-deps --rm web copy_otobo_next

# start containers again, using the new version and the updated /opt/otobo
docker_admin> docker-compose up --detach

# a quick sanity check
docker_admin> docker-compose ps

# complete the update, with running database
docker_admin> docker-compose exec web /opt/otobo_install/entrypoint.sh do_update_tasks

# inspect the update log
docker_admin> docker-compose exec web cat /opt/otobo/var/log/update.log

Nota

Os comandos listados acima podem ser automatizados. Para tal, o script scripts/update.sh será disponibilizado no OTOBO 10.0.8. Este script executa os comandos, começando com o comando docker-compose pull.

./scripts/update.sh --help
./scripts/update.sh