Installer Discourse sur Oracle Cloud Free Tier

<div data-theme-toc="true"></div>

Oracle propose un plan gratuit incluant deux machines virtuelles peu performantes capables de faire tourner Discourse.
Cet essai n’a pas de limite de temps.

:warning: Ces machines virtuelles sont très lentes et je vous déconseille de les utiliser pour héberger une communauté.
Cela dit, cela peut suffire pour héberger une communauté très petite qui ne se soucie pas de la lenteur, ou pour des projets/tests personnels.


Prérequis

  • Un numéro de carte de crédit - rien ne vous sera facturé, mais il est nécessaire pour enregistrer le compte gratuit
  • Un nom de domaine
  • Un fournisseur d’email
  • L’installation de Discourse sera identique à la procédure officielle, mais ce tutoriel vous guidera à travers l’interface et la configuration d’Oracle.

Pour ce tutoriel, nous considérerons que vous utilisez Windows 10, et nous utiliserons PuTTY pour nous connecter à votre serveur via SSH.

Créer votre essai gratuit

Tout d’abord, créez un compte d’essai sur Oracle Cloud Free Tier | Oracle
La création de votre compte n’est pas instantanée et vous devrez peut-être attendre quelques minutes ou heures (ou jours, dans certains cas) pour que votre compte soit validé.

Une fois votre compte créé, rendez-vous sur https://cloud.oracle.com et connectez-vous.

Créer votre serveur

Cliquez sur “Create a VM Instance” (VM signifiant “Virtual Machine”) :

Configurer votre serveur

(Optionnel) Renommez votre instance avec quelque chose de significatif, afin de savoir à quoi elle fait référence dans votre liste de machines virtuelles :

Je vais la nommer comme le nom de domaine que j’utiliserai : “Canapin.win” :
image

Dans Image and shape, changez le système d’exploitation par défaut pour Ubuntu en cliquant sur modifier :

Choisissez Canonical Ubuntu, puis cliquez sur Select Image en bas de la page :

Sur Add SSH keys, plusieurs options sont disponibles :

Cliquez sur Save Private Key et Save Public Key.
Cela téléchargera une clé publique .pub et une clé privée .key. Stockez-les dans un dossier.

Convertir la clé privée pour PuTTY

:raised_hand: Nous allons arrêter de naviguer dans l’interface d’Oracle pendant un moment, et nous y reviendrons plus tard.

Dans ce tutoriel, nous nous connecterons à notre serveur avec PuTTY. Comme la clé privée générée est incompatible avec PuTTY, nous utiliserons un outil nommé PuTTYgen pour convertir la clé afin qu’elle soit compatible avec PuTTY.

Installez PuTTY depuis le site officiel : Download PuTTY: latest release (0.83)

Après avoir installé PuTTY, vous devriez pouvoir rechercher PuTTYgen avec la recherche Windows :


Si elle n’apparaît pas ici, vous pouvez la trouver ici : C:\\Program Files\\PuTTY\\puttygen.exe

Lancez PuTTYgen.
Sélectionnez Conversions → Import key :
Localisez votre fichier .key téléchargé depuis l’interface d’Oracle et cliquez sur Open pour valider la sélection du fichier.

Certains champs apparaîtront et seront automatiquement remplis. Ne les modifiez pas, sauf si vous savez ce que vous faites.

(Optionnel) Ajoutez une phrase secrète à votre clé. Pensez-y comme à un mot de passe pour améliorer la sécurité, qui vous sera demandé à chaque connexion à votre serveur.
Ensuite, cliquez sur Save private Key et stockez-la dans un dossier :

Finaliser la création du serveur

:point_right: Il est temps de retourner à l’interface d’Oracle.

Faites défiler la page jusqu’en bas et cliquez sur le bouton Create :

Attendez environ une minute que le serveur soit créé. La page et ses informations seront mises à jour en temps réel. Pas besoin de rafraîchir :

Assurez-vous que votre domaine pointe vers l’IP de votre serveur nouvellement créé

Faites pointer votre domaine vers l’adresse IP du serveur et attendez la propagation DNS.
:information_source: Ceci ne sera pas expliqué dans ce tutoriel et doit être fait dans la configuration DNS du fournisseur de votre nom de domaine.

Notez le nom d’utilisateur du serveur créé

Notez le nom d’utilisateur que le serveur a créé automatiquement. Ici, le nom d’utilisateur est ubuntu.

Configurer le pare-feu d’Oracle

Maintenant, voici une section de configuration très spécifique à Oracle pour faire fonctionner Discourse. Nous allons ouvrir quelques ports sur un pare-feu.
Cliquez sur Public Subnet dans la section Primary VNIC :

Cliquez sur le lien Security list dans la section Security Lists :

Cliquez sur Add Ingress Rules dans la section Ingress Rules :

Remplissez les règles comme suit :

  • Réglez SOURCE CIDR sur 0.0.0.0/0
  • Réglez DESTINATION PORT RANGE sur 80, 443
    Cliquez sur “Add Ingress Rules” :

Vérifiez que vos règles ont été correctement ajoutées :

Se connecter à votre serveur via SSH avec PuTTY

Lancez PuTTY et remplissez le champ Host Name (or IP address) avec l’adresse IP de votre serveur nouvellement créé :

Dans le menu de l’arbre de gauche, allez dans ConnectionSSHAuth.
Dans les “Authentification parameters”, localisez votre clé privée (le fichier avec l’extension .ppk que vous avez générée avec PuTTYgen) en cliquant sur Browse… :

Cliquez sur Open :

Cliquez sur Accept :

Connectez-vous en tapant votre nom d’utilisateur (ubuntu) et appuyez sur Entrée :


Entrez la phrase secrète si vous en avez choisi une dans PuTTYgen.

PuTTY vérifiera votre clé privée, et vous devriez être connecté :

Configurer le pare-feu d’Ubuntu (iptables)

À ce stade, nous ne pouvons toujours pas installer Discourse. Nous devons ouvrir certains ports directement dans Ubuntu.

Connectez-vous en tant que root en tapant sudo su et appuyez sur Entrée.

Ajoutez ces règles à iptables en tapant :

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
<small>*Note : le "<code>5</code>" signifie que les deux règles seront ajoutées à partir de la ligne 5, juste avant la règle de pare-feu d'entrée `DENY ALL`. Le numéro de ligne pourrait devoir être modifié à l'avenir si Oracle change la configuration iptables par défaut sur son image Ubuntu à l'avenir*</small>

image

Sauvegardez les règles mises à jour avec :

netfilter-persistent save

image

Installer Discourse

Maintenant, votre serveur devrait être prêt à installer Discourse.
Suivez simplement les étapes officielles : discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub

(40 minutes de compilation plus tard… :snail:)


:warning: Encore une fois, les serveurs gratuits d’Oracle sont lents. L’installation et la reconstruction prennent une éternité.
Même l’installation de thèmes ou de composants depuis l’interface peut parfois expirer.
Soyez prévenu… et patient. :person_in_lotus_position:


<small>Discussion connexe avec diverses informations et ressources : https://meta.discourse.org/t/self-hosting-for-free-with-oracle-cloud/139184</small>
9 « J'aime »