Implantar na AWS
Implante o nostrfy na AWS EC2, Lightsail ou ECS/Fargate — passo a passo, com systemd, TLS atrás de um proxy reverso e uma lista de verificação de produção.
Opções: EC2 (VM, recomendado), Lightsail (VM mais simples) ou ECS/Fargate (contêineres).
Opção 1: EC2 (recomendado)
- Inicie uma instância: Amazon Linux 2023 ou Ubuntu 24.04 LTS,
t3.small(2 GB de RAM) é suficiente para começar. Escolha uma região próxima aos seus usuários. - Grupo de segurança: permita TCP de entrada
8080(e443para TLS). Limite a regra SSH ao seu IP. - Conecte-se via SSH e siga o guia genérico de VPS:
sh
ssh -i your-key.pem ec2-user@<public-ip> # No Ubuntu: ubuntu@<public-ip>
curl -fsSL https://raw.githubusercontent.com/iqbqioza/nostrfy/main/install.sh | sh
sudo mkdir -p /etc/nostrfy
sudo curl -fsSL -o /etc/nostrfy/nostrfy.toml \
https://raw.githubusercontent.com/iqbqioza/nostrfy/main/deploy/nostrfy.toml
sudo nano /etc/nostrfy/nostrfy.toml # defina name, public_url, private_key
sudo curl -fsSL -o /etc/systemd/system/nostrfy.service \
https://raw.githubusercontent.com/iqbqioza/nostrfy/main/deploy/nostrfy.service
sudo systemctl daemon-reload
sudo systemctl enable --now nostrfy- Verifique:
sh
curl http://<public-ip>:8080/health- Adicione TLS (
wss://) com certbot + nginx (como no guia VPS) ou com um Application/Network Load Balancer com certificado ACM — depois definarelay.public_urle reinicie.
Opção 2: Lightsail
Instâncias Lightsail funcionam exatamente como o guia EC2 — a aba de rede contém as
regras de firewall: abra TCP 8080.
Opção 3: ECS / Fargate (contêiner)
O Dockerfile do repositório baixa o binário de release pré-compilado no momento do build:
- Envie a imagem para o ECR: sh
docker buildx build --platform linux/amd64,linux/arm64 -t <account>.dkr.ecr.<region>.amazonaws.com/nostrfy . - Crie um serviço ECS (Fargate, 1 tarefa) com um volume EFS montado em
/data(persistência LMDB — sem ele, os dados são perdidos nas reimplantações). - Exponha a porta
8080; coloque na frente um ALB + certificado ACM para TLS. - A configuração embutida
deploy/nostrfy.container.tomlpode ser substituída montando seu próprionostrfy.tomlem/etc/nostrfy/nostrfy.toml(p. ex. um fork que o copia para a imagem).
Elastic IP
Associe um Elastic IP à instância se você pará-la/iniciá-la — caso contrário o IP público
muda e o public_url quebra.