Isto foi separado do tópico de configuração do ambiente de desenvolvimento do WSL no win 11.
Meus problemas estão relacionados a uma configuração de desenvolvimento (não-docker) instalada no ubuntu 22.04.3
…Obrigado por isso, tive que fazer algumas etapas manuais extras, pois o instalador editado não pareceu instalar as versões mais recentes do npm ou ruby
Também usando ubuntu-22.04
Instalar o npm mais recente usando (opção 2): https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-22-04
Instalar pnmp: npm install -g pnpm
Instalar o ruby mais recente (método 3): https://ubuntuhandbook.org/index.php/2024/01/install-ruby-ubuntu-24-04/
Instalar o imagemagik manualmente, a versão mais recente (certifique-se de ir para a seção “Install latest version of ImageMagick from the source code (for advanced and desperate users)”: https://itsfoss.com/install-imagemagick-ubuntu
Somente depois de tudo isso consegui fazer login na instância…
Depois de passar o dia inteiro configurando a instância de desenvolvimento, fiquei bem satisfeito… tudo parece estar ok, exceto o upload de avatares. Especificamente, como usuário, consigo fazer o upload de um avatar e ele é exibido corretamente na caixa de upload de avatar, mas quando clico em salvar, ele exibe apenas o avatar de espaço reservado… sem erros no log…
Isso é bem importante para mim, pois configurei a instância de desenvolvimento para testar uma migração e um desses testes é que ela carrega avatares … então quero ter certeza de que eles funcionam antes de prosseguir com uma importação de teste.
Imagens carregadas em tópicos aparecem corretamente, sem problemas.
Alguém tem alguma ideia? Qualquer ajuda é muito apreciada.
URLs para imagens podem ser um pouco complicadas localmente.
Certifique-se de iniciar seu servidor local com FORCE_HOSTNAME=localhost:4200 bin/ember-cli -u
É melhor usar uma instância de teste na nuvem para imitar seu destino final… na verdade, eu recomendaria que você testasse as migrações na nuvem, em última análise.
Estou tão cansado depois de passar o dia inteiro fazendo este ambiente de desenvolvimento local chegar onde está, que não consigo me convencer de que tudo foi inútil agora achei que estava lá!
Meu processo de pensamento para um ambiente de desenvolvimento local foi:
executar o script de importação localmente, fazer backup do Discord, colocá-lo na instância de produção em nuvem apropriada quando tudo parecer bom…
Primeiro problema - o caminho do avatar era o endereço IP 127.0.0.1, enquanto todos os outros URLs eram localhost - isso faria alguma diferença? Eu mudei de qualquer maneira, entrando no rails c (já que não parecia captar os parâmetros da linha de comando para iniciar o discourse (FORCE_HOST=localhost etc.), eles estavam em branco no rails).
rails c
SiteSetting.force_hostname = "localhost"
SiteSetting.port = 4200
exit
Então os caminhos dos avatares eram localhost e não endereço IP depois que reiniciei o site. Os avatares ainda não estavam funcionando, no entanto.
Mais investigação dos logs assim que fiz uma importação de avatar:
tail -n 200 log/development.log
revelou:
convert: no decode delegate for this image format jpeg:/home/bob/discourse/public/uploads/default/original/1X/92bb0d46e6a4b8a1333505b9d2da59a5ed1721ec.jpeg[0]' @ error/constitute.c/ReadImage/752.\nconvert: no images defined jpeg:/tmp/discourse-thumbnail20260202-4096-qjyo93.jpeg' @ error/deprecate.c/ConvertImageCommand/3368.\n"
e depois de alguma pesquisa descobri que era porque eu tinha instalado o imagemagick, mas não os delegados jpeg PRIMEIRO. Desinstalei o Imagemagick, instalei os delegados jpeg (e outros):
reiniciei o servidor discourse e os avatares funcionaram instantaneamente
Estou irritado comigo mesmo por ter fixado nas referências de URL ip/localhost em vez de verificar o básico… mas é isso, aprendi bastante nos últimos dois dias e está funcionando agora