Onde especifico --platform linux/arm64 na sequência ./launcher rebuild app?
Preciso testar o Discourse/Docker localmente no M1.
Seria ótimo definir isso até que a build ARM seja totalmente implementada.
Atenciosamente,
Walker
Onde especifico --platform linux/arm64 na sequência ./launcher rebuild app?
Preciso testar o Discourse/Docker localmente no M1.
Seria ótimo definir isso até que a build ARM seja totalmente implementada.
Atenciosamente,
Walker
O Discourse não funciona em arm64 no momento, portanto não há uma opção no launcher para ele.
Estamos trabalhando ativamente nisso e já temos vários membros da nossa equipe executando-o em M1, mas ainda requer uma branch do libv8, que é uma dependência transitiva proveniente do miniracer.
Obrigado, Rafael.
Vocês são incríveis.
Abraços,
Walker
Você pode tentar o parâmetro de argumentos do Docker que o launcher possui, pode funcionar.
Como está a performance no dev?
Desempenho incrível para cargas de trabalho de Rails de núcleo único, como a criação ou visualização de tópicos. Ainda muito mais lento do que qualquer oferta recente x86_64 em multicore ou qualquer coisa que envolva E/S de disco.
Entendi. Obrigado por essa informação. Acredito que o suporte de software para o M1 levará algum tempo para ser ajustado, mas o futuro parece promissor.
Pode parecer estranho, mas isso me deixa um pouco feliz por meu dispositivo recém-comprado não estar obsoleto de repente. ![]()
Se isso não funcionar, você pode usar a variável de ambiente DOCKER_DEFAULT_PLATFORM. Atualmente, tenho:
export DOCKER_DEFAULT_PLATFORM=linux/amd64
no meu perfil do zsh. Ao usar o Docker, quase sempre quero que a arquitetura corresponda aos sistemas de produção.
Comparado aos MacBooks da geração anterior, é uma grande melhoria, mesmo que os problemas de desempenho do sistema de arquivos ainda existam. No entanto, um desktop Linux de alto desempenho ainda será superior.
Por exemplo, posso executar bin/turbo_rspec no core em cerca de 2m50s (M1 Macbook Pro, com Discourse, Redis e Postgres rodando nativamente). Membros da equipe em desktops Linux de alto desempenho conseguem fazer isso em cerca de 1 minuto.
Qual é o roteiro para que isso seja habilitado como stable?
Precisamos de um novo mini racer / v8 gem para ser lançado. Ainda não há previsão de lançamento; no momento, estamos testando versões alfa.
@sam e como estão os testes? Estou muito interessado na versão compatível com M1.
Não é tão ruim assim… existem pessoas (desenvolvedores) por aí que nem se aproximam disso…
Para o desenvolvimento do Discourse no M1, você pode encontrar algumas informações no fórum do Rails: Tips and tricks for developing Rails applications on Apple Silicon - rubyonrails-talk - Ruby on Rails Discussions. Alguns de nós na equipe usamos isso diariamente, e funciona.
No entanto, não recomendo tentar executar um servidor de produção do Discourse no M1.
Se for assim, por que não lançar para GA?
Eu não recomendaria tentar rodar um servidor Discourse de produção no M1, no entanto.
Por que não?
É absolutamente encantador. Estou sem palavras para agradecer por isso. Ótimo trabalho.
Além disso, o MacBook Air M1 é bom o suficiente para desenvolvimento no Discourse?
Acho que sim ![]()
É absolutamente lindo. Estou sem palavras para agradecer por isso. Ótimo trabalho.
Acho que espalhar a palavra sobre o Discourse seria o suficiente…
Não entendi… tudo isso é público, você pode seguir essas instruções e colocar tudo para funcionar.
Nossas instruções de instalação para produção são destinadas à execução em um host Linux AMD64. Você pode conseguir executá-lo em outros sistemas operacionais/arquiteturas usando as dicas deste tópico, mas não há garantias.
Com certeza. Eu tenho o Pro, mas também temos pessoas usando MacBook Airs M1 e Mac Minis. Parece haver muito pouca diferença de desempenho entre eles em nossos benchmarks de desenvolvimento.
onde? no repositório público oficial?
No artigo que linkei:
Não fizemos nenhuma alteração no Discourse que esteja em alguma branch de desenvolvimento privada, se é isso que você está se perguntando. Você pode fazer o Discourse funcionar em um sistema M1 instalando as versões ARM64 das dependências que usamos, o que está no guia postado acima por David.
Todos gostaríamos que o repositório oficial funcionasse com o novo hardware, certo?
E não algum código escondido no armário.