Déployer sur AWS
Déployez nostrfy sur AWS EC2, Lightsail ou ECS/Fargate — étape par étape, avec systemd, TLS derrière un reverse proxy et une liste de contrôle production.
Options : EC2 (VM, recommandé), Lightsail (VM plus simple) ou ECS/Fargate (conteneurs).
Option 1 : EC2 (recommandé)
- Lancez une instance : Amazon Linux 2023 ou Ubuntu 24.04 LTS,
t3.small(2 Go de RAM) suffit pour commencer. Choisissez une région proche de vos utilisateurs. - Groupe de sécurité : autorisez le TCP entrant
8080(et443pour TLS). Limitez la règle SSH à votre IP. - Connectez-vous en SSH et suivez le guide VPS générique :
sh
ssh -i your-key.pem ec2-user@<public-ip> # Sous 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 # définissez 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- Vérifiez :
sh
curl http://<public-ip>:8080/health- Ajoutez TLS (
wss://) avec certbot + nginx (comme dans le guide VPS) ou avec un Application/Network Load Balancer et un certificat ACM — puis définissezrelay.public_urlet redémarrez.
Option 2 : Lightsail
Les instances Lightsail fonctionnent exactement comme le guide EC2 — l’onglet réseau contient les
règles de pare-feu : ouvrez le TCP 8080.
Option 3 : ECS / Fargate (conteneur)
Le Dockerfile du dépôt télécharge le binaire de release précompilé au moment du build :
- Poussez l’image vers ECR : sh
docker buildx build --platform linux/amd64,linux/arm64 -t <account>.dkr.ecr.<region>.amazonaws.com/nostrfy . - Créez un service ECS (Fargate, 1 tâche) avec un volume EFS monté sur
/data(persistance LMDB — sans lui, les données sont perdues lors des redéploiements). - Exposez le port
8080; placez devant un ALB + certificat ACM pour TLS. - La config intégrée
deploy/nostrfy.container.tomlpeut être remplacée en montant votre proprenostrfy.tomlsur/etc/nostrfy/nostrfy.toml(p. ex. un fork qui le copie dans l’image).
Elastic IP
Attachez une Elastic IP à l’instance si vous l’arrêtez/redémarrez — sinon l’IP publique
change et public_url casse.