Este é uma reescrita do serviço de mensagens recentes da versão 1.
Consulte https://recent-messages.robotty.de/ para todos os tipos de informações que você pode querer.
sudo apt install build-essential , para outros sistemas operacionais, recomendo que você apenas tente prosseguir com a etapa três e depois tentar consertar os programas de compilador/bibliotecas de sistemas ausentes à medida que aparecemgit clone https://github.com/robotty/recent-messages2.git && cd recent-messages2cargo build --release./target/release/recent-messages2 (no Windows com o sufixo .exe adicional). O binário está estaticamente vinculado e, portanto, pode ser movido para outros diretórios ou enviado para máquinas remotas sem a necessidade de arquivos adicionais. Espera -se que o config.toml esteja no diretório de trabalho do processo. Edite -o no seu caso de uso antes da primeira inicialização:
editor config.toml
O binário pode ser executado com qualquer gerenciador de processos em segundo plano (Systemd etc.), ou você pode dockerizá -lo. Para fins de teste, você pode usar cargo run --release .
Um arquivo de amostra para executá-lo como uma unidade Systemd é fornecido como recent-messages2.service .
cp ./recent-messages2.service /etc/systemd/system/recent-messages2.service
Agora edite o arquivo de serviço para refletir sua configuração:
sudo editor /etc/systemd/system/recent-messages2.service
E inicie o serviço.
sudo systemctl daemon-reload
sudo systemctl enable --now recent-messages2.service
Exibir o log de saída/status do serviço:
sudo journalctl -efu recent-messages2.service
sudo systemctl status recent-messages2.service
Além disso, onde quer que você coloque o diretório de trabalho do serviço, verifique se há um diretório chamado messages que é gravável para o Serviço. As mensagens serão persistidas lá entre as reinicializações.
As instruções para configurar o site estático (como o https://recent-messages.robotty.de "são encontradas no readme no diretório ./web deste repo. Lá você também pode encontrar um exemplo de configuração nginx.
Um endpoint de métricas de Prometheus é exposto em /api/v2/metrics . Você pode importar o grafana-dashboard.json no repositório como um modelo de painel em uma instância de Grafana.