Auto-hébergement gratuit (avec des réserves !) avec Oracle Cloud

https://blogs.oracle.com/developers/install-run-discourse-for-free-in-the-oracle-cloud

Ce billet de blog date de l’année dernière. Je n’ai vu aucune mention à ce sujet ; je pense qu’Oracle, en tant que société d’hébergement, est hors de portée pour la plupart des gens.

Ainsi, avant de publier, j’ai décidé de l’essayer moi-même pour voir si c’était vraiment viable. J’ai créé un site de démonstration :

https://www.opendiscussion.pw

Je me suis inscrit sur un compte Oracle Cloud. Il était indiqué que la validation du compte prendrait 15 minutes, mais j’ai dû attendre deux jours en raison d’un problème avec ma carte de crédit (une carte de crédit est demandée pour la validation).

J’ai suivi les instructions du billet de blog, puis les instructions d’installation Docker standard de Discourse. Cela a presque fonctionné du premier coup ! J’ai rencontré un problème avec la configuration de l’e-mail. Je pense que c’est la seule partie qui n’est pas correctement expliquée dans le billet de blog. J’ai dû consulter la documentation. La documentation d’Oracle est très bonne.

Voici ce que ce niveau d’offre inclut :

  • 2 (deux) machines virtuelles
    La machine virtuelle dispose d’un huitième d’OCPU avec la possibilité d’utiliser des ressources CPU supplémentaires. VM.Standard.E2.1.Micro. 2,0 GHz AMD EPYC 7551
    Mémoire : 1 Go

  • Bande passante : 10 To

  • Stockage : volume de bloc de 100 Go

  • E-mail : 1 000 / mois (SMTP n’est pas inclus)

31 « J'aime »

Il est à noter que la configuration proposée par Oracle dispose d’un disque d’environ 40 Go (pour le système d’exploitation et les données utilisateur) ainsi que d’une partition d’échange de 8 Go. Aucun fichier d’échange n’est nécessaire. De plus, comme vous pouvez obtenir deux machines virtuelles au niveau « toujours gratuit », séparer le conteneur de base de données constitue une option de mise à l’échelle.

(Pour une raison quelconque, la plateforme de services (PaaS) de base de données gratuite proposée là-bas n’est pas Postgres. :wink: )

6 « J'aime »

Merci pour ces informations intéressantes !

J’ai moi aussi rencontré un problème. J’ai essayé à plusieurs reprises sans succès (message de ma banque indiquant « cryptogramme incorrect », alors que le cryptogramme était correct).
J’ai essayé dans un autre navigateur et cela a fonctionné ; j’ai simplement utilisé une autre adresse e-mail… Et maintenant, cela fait plusieurs heures que j’attends la validation de mon compte.

C’est gratuit, mais le processus d’inscription est un peu pénible… :sweat_smile:

1 « J'aime »

Quel est exactement le problème avec la partie e-mail ? J’ai réussi à installer Discourse sur Oracle Cloud, mais je n’arrive pas, pour l’amour de Dieu, à faire fonctionner la livraison des e-mails. Lorsque je suis sur le point d’enregistrer l’utilisateur administrateur sur l’installation Discourse, je ne reçois jamais d’e-mail.

Discourse-doctor parvient à contacter le serveur SMTP d’Oracle, mais l’e-mail n’est pas envoyé.

J’ai configuré plusieurs expéditeurs autorisés, au cas où. Mon adresse e-mail d’administrateur, noreply@[forum domain] et noreply@[main domain]. Laquelle est la plus importante ?

J’ai également ajouté un enregistrement TXT dans les paramètres DNS de mon domaine avec la chaîne SPF recommandée.

1 « J'aime »

C’était délicat. Si je me souviens bien, ce qui a fonctionné pour moi, c’est de modifier containers/app.yml :

  ## Si vous souhaitez définir l'adresse e-mail 'De' pour votre première inscription, décommentez et modifiez :
  ## Après avoir reçu le premier e-mail d'inscription, re-commentez la ligne. Elle ne doit être exécutée qu'une seule fois.
  - exec: rails r "SiteSetting.notification_email='noreply@opendiscussion.pw'"
2 « J'aime »

Merci pour votre réponse !

Malheureusement, cela n’a pas aidé (même après avoir reconstruit l’application).

Puis-je vous demander à quoi ressemblent vos enregistrements TXT ?

Vous n’avez pas non plus décommenté le paramètre « START TLS » ?

1 « J'aime »

Alors, qu’avez-vous fait pour l’e-mail ? Faut-il payer pour cela ? (car vous avez indiqué que SMTP n’est pas inclus)

1 « J'aime »

SMTP est inclus. Il ne l’était pas dans toutes les régions à une certaine époque. C’est juste un enfer à configurer… :neutral_face:

2 « J'aime »

Savez-vous s’il existe un journal SMTP quelque part dans Oracle Cloud ? J’aimerais savoir pourquoi l’e-mail n’est pas envoyé alors que je peux contacter le serveur SMTP sans problème. Pourquoi je ne suis pas autorisé ou quelle que soit le problème.

1 « J'aime »

Oracle Cloud propose un service SMTP, mais il n’est pas inclus dans la formule toujours gratuite. Il est très abordable (0,085 USD pour 1 000 e-mails), donc je l’utilise quand même. Ils ne m’ont encore rien facturé.

https://www.oracle.com/cloud/networking/email-delivery.html#pricing

https://docs.cloud.oracle.com/en-us/iaas/Content/Email/Concepts/overview.htm

2 « J'aime »

Oups, vous avez raison. Je n’avais pas réalisé que j’étais passé en version d’essai payante alors que je m’étais inscrit à l’offre gratuite.

Existe-t-il des services SMTP gratuits alternatifs compatibles avec Discourse, tout en maintenant Discourse lui-même sur Oracle Cloud ?

3 « J'aime »

Je pense que le seul qui reste est Pricing | Mailjet. C’est vraiment dommage que la mafia de la Silicon Valley ait volé les e-mails gratuits sur Internet :smiley:

4 « J'aime »

Après 1 mois à essayer de faire fonctionner mon compte d’essai, avec le support chat qui m’a dit qu’il ne pouvait pas m’aider, et le support par e-mail qui n’a pas non plus été d’un grand secours, n’ayant répondu qu’une seule fois en disant qu’ils allaient récupérer des informations sur mon compte et me recontacter, mais ne l’ont jamais fait…

J’ai demandé à un ami de créer un compte pour moi, et cela a fonctionné du premier coup en moins de 15 minutes.

Ensuite, j’ai essayé d’installer Discourse et j’ai beaucoup galéré. J’ai suivi le tutoriel d’installation de Discourse sur Oracle, mais pour une raison inconnue, je n’ai pas pu me connecter au port 443.

J’ai essayé d’installer Discourse sur une image Ubuntu standard, mais je n’ai pas réussi à me connecter via les ports 80 ni 443, pour des raisons inconnues.

Je suis revenu aux instructions officielles : cela ne fonctionnait pas au début (les connexions sur les deux ports ont échoué), mais après avoir redémarré Docker, cela s’est connecté magiquement aux deux ports.

Mon expérience n’est donc pas des meilleures, que les problèmes viennent de moi ou d’Oracle.

Mais au final, j’ai maintenant une installation Discourse gratuite, en ligne, certes pas la plus rapide, mais qui fonctionne. :+1:t6:

Pour ceux qui souhaitent suivre le même tutoriel, il y a une petite erreur dans la partie pare-feu du serveur.

Au lieu de :
sudo firewall-cmd —reload
Vous devez écrire :
sudo firewall-cmd --reload

6 « J'aime »

Par défaut, vous ne pouvez pas installer Discourse car les connexions sur les ports 80 et 443 ne sont pas autorisées. Vous devez les autoriser tous les deux dans la liste de sécurité (dans le panneau de contrôle Oracle) et le pare-feu de l’instance (via SSH).

Voici comment procéder sur une installation Ubuntu standard (cela diffère légèrement de leur guide officiel qui utilise une autre image Linux).

Dans le panneau Oracle :

Après avoir créé votre instance Ubuntu, accédez aux Détails de l’instance et cliquez sur le lien du sous-réseau :

Cliquez sur la Liste de sécurité :

Cliquez sur Ajouter des règles d’entrée, sélectionnez le protocole TCP, définissez le CIDR source sur 0.0.0.0/0, et la plage de ports de destination sur 80,443.
Validez en cliquant sur « Ajouter des règles d’entrée ».

Vérifiez que les règles ont bien été ajoutées dans la liste de sécurité :

Dans la ligne de commande de votre serveur via SSH :

Ajoutez ces règles à iptables :

iptables -I INPUT 5 -i ens3 -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -I INPUT 5 -i ens3 -p tcp --dport 443 -m state --state NEW,ESTABLISHED -j ACCEPT

La commande ajoutera les règles au bon endroit. Si vous les ajoutez simplement à la suite des règles existantes sans spécifier le numéro de ligne (5), cela ne fonctionnera pas car elles seront écrasées par une règle précédente de type « rejeter tout ».

Enregistrez les règles afin qu’elles persistent après un redémarrage :

netfilter-persistent save

Vous pouvez maintenant installer Discourse ! :tada:

8 « J'aime »

Bonjour, recommandez-vous Oracle Cloud pour un site en production, assez actif ?
Merci

1 « J'aime »

Je pense que vous pouvez héberger une petite communauté si vous et vos utilisateurs ne vous souciez pas beaucoup de la vitesse du forum. Mais je ne le recommanderais pas, car vous pouvez trouver un hébergement bon marché (~5 $/mois) avec des spécifications bien meilleures.

@Hector, https://www.opendiscussion.pw est-il toujours hébergé sur un serveur gratuit ?

4 « J'aime »

Salut, par hébergement bon marché à environ 5 /mois, tu veux dire le droplet Digital Ocean à 5 ?

1 « J'aime »

Oui, par exemple.

Personnellement, j’aime Hetzner car ils ne sont pas chers et leurs serveurs sont facturés à l’heure, ce qui est idéal pour tester des choses sur de courtes durées. Mais je pense qu’ils n’ont des serveurs qu’en Europe.

3 « J'aime »

Oui, toujours sur le serveur gratuit. Il n’a aucun trafic, donc je ne peux pas dire de quoi il est capable. Je l’utilise également pour le développement. Jusqu’ici, tout va bien.

3 « J'aime »

Pour un VPS Hetzner, dois-je également installer LAMP, gérer les mises à jour du serveur et me méfier des pirates, etc. ?

En revanche, sur Digital Ocean, tout est prêt ; je n’ai pas à sécuriser le serveur, je dois simplement installer et gérer Discourse, n’est-ce pas ? Est-ce là la véritable différence entre Digital Ocean et tout autre VPS ?

Digital Ocean est-il un VPS géré ?

Merci !
Deb

1 « J'aime »