Forma correta de atualizar o sistema operacional do Docker (Bullseye)

Preciso atualizar o sistema operacional Debian (bullseye) atual para atualizar pacotes que estão sendo sinalizados. Existe documentação sobre isso ou passos?

Obrigado

Este não é um problema do Discourse, mas sim do sistema operacional. Existem muitos sites descrevendo como atualizar seu sistema operacional.

Minha recomendação é criar uma nova VM com um novo sistema operacional e, em seguida, Mover um site Discourse para outro VPS com rsync

2 curtidas

O sistema operacional Docker que foi instalado durante a instalação do discourse, não o sistema operacional host.

Você pode adicionar os comandos usuais ao app.yml

1 curtida

Você quer atualizar o Debian dentro do container?

O que está sendo sinalizado e por quem?

Mas se é isso que você quer dizer, você pode

./launcher enter app
apt-get update
apt-get upgrade

e provavelmente não quebrará nada. Não recomendo, no entanto.

E se é isso que você realmente quer dizer, então você pode adicionar isso como estrofes exec, você pode olhar em templates/import/mysql-dep.template.yml para um exemplo.

Sim, Debian dentro do contêiner porque vejo isso como minha única opção.

Por exemplo, nossa equipe de segurança sinalizou vulnerabilidades com Node.js 18.x, libcurl, openssl. Pegue o libcurl, minha versão atual é 7.4, que parece ser a versão mais atual em bullseye, mas para conformidade precisa ser 8.4 e outros pacotes seguem o mesmo.

./launcher enter app
apt-get update
apt-get upgrade

Executei esses comandos para atualizar o bullseye, mas sem sucesso.

Sim. Não é tão simples. Não existe uma “maneira adequada de atualizar o sistema operacional do Docker (bullseye)”.

Você pode concebivelmente modificar https://github.com/discourse/discourse_docker/blob/main/image/base/slim.Dockerfile para construir uma imagem que sua equipe de TI aprovará. Eu acho que começaria usando a versão mais recente do Debian como imagem base. Provavelmente reservaria uma semana para fazer isso, mas poderia facilmente levar metade ou o dobro do tempo, se a base de código do Discourse sequer funcionar com as versões mais recentes (provavelmente funciona, mas não há como saber).

Construir uma imagem que funcione e satisfaça seus problemas de conformidade será demorado e provavelmente mais perigoso do que usar a imagem padrão, que é testada pela equipe do Discourse e funciona em milhares de sites. Em vez disso, você estará executando uma imagem que só você conhece. Quando ela quebrar, você não poderá obter nenhum suporte aqui, pois será impossível saber se o problema é com o código ou com alguma biblioteca que o Discourse ainda não suporta.

Toda vez que você atualizar, precisará reservar tempo para ver se as atualizações do Discourse funcionam com sua imagem.

Se o seu pessoal de TI insistir nessas atualizações, você provavelmente deve considerar outra plataforma.

Olá, então aqui um desenvolvedor proeminente diz que sempre usa o Node LTS mais recente em sua versão de desenvolvimento, sugerindo que não deve haver problema com isso.

Então, isso significa que seu problema com o Node deve estar totalmente seguro.

Parece altamente improvável que o libcurl quebre as coisas de forma incompatível com versões anteriores, então talvez sua tarefa não seja tão difícil quanto eu imaginava. Então, talvez apenas 1-5 horas de trabalho para alguém familiarizado com as várias partes.

Então, eu acho que você só precisaria fazer um fork do discourse_docker e mudar algumas linhas no slim.Dockerfile e talvez funcione e não seja um grande problema, afinal.

1 curtida