Problema com versão do Docker não suportada

Olá,

Alterei as configurações do SMTP e estou tentando reconstruir o aplicativo.

cd /var/discourse
./launcher rebuild app

Saída: ERRO: A versão do Docker 1.9.1 não é suportada. Por favor, atualize para pelo menos 17.03.1, ou recomendada 17.06.2

O que posso fazer? Alguma sugestão?

Você já tentou atualizar seu Docker para pelo menos a versão 17.03.1? Se não tiver certeza de como fazer isso, execute uname -a e cole os resultados aqui.

Olá, obrigado pela resposta.

Aqui está o resultado:
Ekran Resmi 2020-03-15 01.13.43

sudo apt-get update && sudo apt-get upgrade deve resolver o problema. Tudo realmente depende de como você instalou o Docker inicialmente.

Existe o risco de algo interromper o funcionamento do Discourse após a atualização?

Sempre existe o risco desse tipo de coisa, mas, se você quiser reconstruir o aplicativo, precisará atualizar o Docker.

Minha recomendação é que você comunique à sua comunidade que está realizando uma manutenção, faça um backup se ainda não o fez e, em seguida, realize a atualização.

O Kernel 3.13.0-147 me parece um pouco antigo?

Sim.

Nesse caso, precisamos fazer uma atualização separada para o kernel? Ou o seguinte comando é suficiente?

sudo apt-get update && sudo apt-get upgrade

Também o apt-get dist-upgrade? Verifique a documentação do Ubuntu para ter certeza.

Estou apenas tentando alterar o serviço de e-mail e as configurações SMTP no app.yml. Existe alguma outra maneira de validar essas configurações (app.yml) sem atualizar?

Por motivos de segurança, você realmente deveria estar executando as versões mais recentes do software, mas essa é sua decisão…

De acordo com How to reload configuration after app.yml changes? - #2 by riking, se você estiver alterando apenas as configurações na seção env do app.yml e não precisar desse env para inicialização, ./launcher restart app deve funcionar para recarregar as configurações do SMTP.

./launcher restart app também não funciona. Erro: Versão do Docker 1.9.1 não suportada.

O que mais podemos fazer?

O problema é que o launcher rebuild baixa o código mais recente do GitHub, que não é compatível com a sua versão do Docker. Isso pode ser evitado se você ainda não executou o rebuild, mas, nessa situação, a única solução provavelmente é seguir em frente. Como @yanokwa apontou, você realmente não deve executar versões muito antigas do sistema operacional ou do Discourse, pois há vários problemas de segurança ao fazê-lo.

O que aconteceu quando você tentou o dist-upgrade conforme mostrado acima?

Eu não usei este comando. Estou procurando uma maneira de resolvê-lo sem atualizar. (Por enquanto. :slight_smile: )

Você atualizou o Discourse, o que significa que agora precisa corrigir o Docker.

O comando dist-upgrade pode resolver isso. Supondo que você tenha cópias dos seus backups e que este seja o único aplicativo no servidor, há pouco risco neste momento. No pior caso, você precisará apenas refazer o guia de instalação de 30 minutos e restaurar um backup.

Foi você quem configurou o servidor? Se sim, lembra como ele foi configurado? Quanto mais informações você puder nos fornecer aqui, mais rápido poderemos encontrar uma solução para você.

Eu não construí o servidor. Criei um snapshot e estou trabalhando nele.

Usei esses comandos para atualizar as versões do Docker e do kernel:

sudo apt-get dist-upgrade
sudo apt-get update && sudo apt-get upgrade

Após a atualização, a versão do Docker ainda é 1.9.1 :frowning:

Tentei atualizar a versão do Docker com este comando:

wget -qO- https://get.docker.com/ | sh

Ao executar o comando docker run -it --rm hello-world, a saída foi:

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Pull complete 
Digest: sha256:f9dfddf63636d84ef479d645ab5885156ae030f611a56f3a7ac7f2fdd86d7e4e
Status: Downloaded newer image for hello-world:latest
docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:301: running exec setns process for init caused \"exit status 23\"": unknown.

Ao executar ./launcher rebuild app, a saída foi:

WARNING: We are about to start downloading the Discourse base image
This process may take anywhere between a few minutes to an hour, depending on your network speed

Please be patient

Unable to find image 'discourse/base:2.0.20200220-2221' locally
2.0.20200220-2221: Pulling from discourse/base
bc51dd8edc1b: Pulling fs layer
27ae5d171719: Pulling fs layer
bc51dd8edc1b: Verifying Checksum
bc51dd8edc1b: Download complete
bc51dd8edc1b: Pull complete
27ae5d171719: Verifying Checksum
27ae5d171719: Download complete
27ae5d171719: Pull complete
Digest: sha256:b3acee0b655f071e98205dbd12fa78b95a6dd4038d27f1259177f76ab2efe4f7
Status: Downloaded newer image for discourse/base:2.0.20200220-2221
/usr/bin/docker: Error response from daemon: OCI runtime create failed: container_linux.go:348: starting container process caused "process_linux.go:301: running exec setns process for init caused \"exit status 23\"": unknown.
Your Docker installation is not working correctly

See: https://meta.discourse.org/t/docker-error-on-bootstrap/13657/18?u=sam

Você pode precisar reiniciar após atualizar o Docker.

Após reiniciar, a mesma saída:

/usr/bin/docker: Erro de resposta do daemon: falha na criação do runtime OCI: container_linux.go:348: iniciar o processo do contêiner causou "process_linux.go:301: executar setns para init causou \"saída com status 23\"": desconhecido.
Sua instalação do Docker não está funcionando corretamente

Veja: https://meta.discourse.org/t/docker-error-on-bootstrap/13657/18?u=sam