Démarrage
Vous aurez besoin de :
- Une instance Discourse avec un accès à app.yml
- Un compte AWS
Stratégie de nommage
Il existe de nombreux endroits où l’on peut se tromper. L’utilisation d’une stratégie de convention de nommage qui a du sens pour vous, et peut-être pour d’autres, vous aidera dans le dépannage, surtout si vous configurez plusieurs instances Discourse.
- Utilisateur IAM : votre-utilisateur-iam
- Stratégie : s3-discourse-strategie-votre-utilisateur-iam
- Bac de sauvegarde : votredomaine-sous-domaine-sauvegardes
- Bac de téléchargements : votredomaine-sous-domaine-téléchargements
- Réseaux de distribution de contenu (CDN) : cdn-votredomaine-sous-domaine et s3-votredomaine-sous-domaine-téléchargements
Optionnel : Bac de processus de configuration : a-origin-config-bucket
Configuration AWS
Utilisez les paramètres par défaut sur les pages de configuration AWS, sauf instruction contraire.
Noms S3, noms, noms
- Domaine de l’instance Discourse : sous-domaine.votredomaine.tld (sous-domaine.votredomaine.tld incluant www.votredomaine.tld)
- Utilisateur IAM : votredomaine-sous-domaine (votredomaine-discourse, votredomaine-forum ou Discourse au niveau racine/apex : votredomaine-tld-www)
- Stratégie pour l’utilisateur IAM : s3-discourse-strategie-votredomaine-sous-domaine
- Bac de téléchargements : votredomaine-sous-domaine-téléchargements. Remarque : N’oubliez pas de définir « Tout le monde (accès public) » sur « Lecture » dans Bac > Permissions : Liste de contrôle d’accès (ACL) - Liste de contrôle d’accès (ACL) - Bénéficiaire.
- Bac de sauvegarde : votredomaine-sous-domaine-sauvegardes
- Réseaux de distribution de contenu (CDN) : cdn-votredomaine-sous-domaine et s3-votredomaine-sous-domaine-téléchargements
- Bac de processus de configuration : a-origin-config-bucket
Utilisateurs IAM
- Allez dans IAM > Utilisateurs > Sélectionnez « Créer un utilisateur »
- IAM > Utilisateurs > Créer un utilisateur > Spécifier les détails de l’utilisateur > Détails de l’utilisateur > Nom d’utilisateur > Entrez le nom, par exemple votre-utilisateur-iam > Sélectionnez « Suivant »
- IAM > Utilisateurs > Créer un utilisateur > Définir les permissions > Options de permissions > Sélectionnez « Attacher des stratégies directement » > Sélectionnez « Créer une stratégie » > Ouvre la page Créer une stratégie (Alternativement, la stratégie peut être créée d’abord dans Stratégies, puis sélectionnée lors de la création de l’utilisateur dans « Stratégies de permissions ».)
- IAM > Utilisateurs > Créer un utilisateur > Définir les permissions > Stratégies de permissions > Filtrer par le sélecteur déroulant Type > Sélectionnez « Gérée par le client » > Sélectionnez la stratégie nouvellement créée > Sélectionnez « Suivant » > Sélectionnez « Créer un utilisateur »
- IAM > Utilisateurs > votre-utilisateur-iam > Identifiants de sécurité > Clés d’accès > Sélectionnez « Créer une clé d’accès »
- IAM > Utilisateurs > votre-utilisateur-iam > Créer une clé d’accès > Bonnes pratiques et alternatives pour les clés d’accès > Sélectionnez « Autre » > Sélectionnez « Suivant »
- IAM > Utilisateurs > votre-utilisateur-iam > Créer une clé d’accès > Définir une étiquette de description > Sélectionnez « Créer une clé d’accès »
- IAM > Utilisateurs > votre-utilisateur-iam > Créer une clé d’accès > Récupérer les clés d’accès > Enregistrez en toute sécurité la clé d’accès et la clé d’accès secrète pour une utilisation dans app.yml de Discourse > Sélectionnez « Terminé »
Stratégies
- Modifiez s3-discourse-strategie-votre-utilisateur-iam.txt avec votre nom d’utilisateur IAM et les noms de vos bacs.
- Allez dans IAM > Stratégies > Créer une stratégie
- IAM > Stratégies > Créer une stratégie > Spécifier les permissions > Éditeur de stratégie > Sélectionnez « JSON » dans l’éditeur de stratégie > Copiez la stratégie depuis s3-discourse-strategie-votre-utilisateur-iam.txt et collez-la dans l’éditeur JSON en remplaçant le JSON existant > Sélectionnez « Suivant »
- IAM > Stratégies > Créer une stratégie > Examiner et créer > Détails de la stratégie > Nom de la stratégie > Entrez le nom de la stratégie, par exemple s3-discourse-strategie-votre-utilisateur-iam > Sélectionnez « Suivant »
- Allez dans Utilisateurs IAM : 4. IAM > Utilisateurs > Créer un utilisateur pour continuer le processus de création d’utilisateur
Bacs Amazon S3
Créez et configurez le bac de sauvegarde, le bac de téléchargements et le bac de processus de configuration, optionnel mais utile.
Créer le bac de sauvegarde votredomaine-sous-domaine-sauvegardes
- Allez dans Amazon S3 Bacs > Sélectionnez « Créer un bac »
- Amazon S3 > Bacs > Créer un bac > Configuration générale > Confirmez la sélection « Usage général »
- Amazon S3 > Bacs > Créer un bac > Configuration générale > Nom du bac > Entrez le nom du bac de sauvegarde, par exemple votredomaine-sous-domaine-sauvegardes
- Amazon S3 > Bacs > Créer un bac > Configuration générale > Confirmez la sélection « ACL désactivées (recommandé) »
- Amazon S3 > Bacs > Créer un bac > Paramètres de blocage de l’accès public pour ce bac > Désélectionnez « Bloquer tout accès public », puis sélectionnez « Bloquer l’accès public aux bacs et objets accordés via de nouvelles politiques de bac ou de point d’accès publics » et « Bloquer l’accès public et inter-comptes aux bacs et objets via toute politique de bac ou de point d’accès public »
- Amazon S3 > Bacs > Créer un bac > Paramètres de blocage de l’accès public pour ce bac > La désactivation du blocage de tout accès public peut entraîner la mise en accès public de ce bac et des objets qu’il contient > Sélectionnez « J’accepte que les paramètres actuels puissent entraîner la mise en accès public de ce bac et des objets qu’il contient. »
- Amazon S3 > Bacs > Créer un bac > Versionnement du bac > Versionnement du bac > Sélectionnez « Activer » Info : Le versionnement du bac est requis pour les « Règles de cycle de vie »
- Amazon S3 > Bacs > Créer un bac > Sélectionnez « Créer un bac »
Configuration des règles de cycle de vie
Règle de rétention des sauvegardes
- Amazon S3 > Bacs > Sélectionnez le bac nouvellement créé, par exemple votredomaine-sous-domaine-sauvegardes
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Sélectionnez « Créer une règle de cycle de vie »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Nom de la règle de cycle de vie > Entrez le nom de la règle, par exemple rétention des sauvegardes
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Choisir une portée de règle > Sélectionnez « Appliquer à tous les objets du bac »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Choisir une portée de règle > Appliquer à tous les objets du bac > Sélectionnez « J’accepte que cette règle s’applique à tous les objets du bac. »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Actions de la règle de cycle de vie > Sélectionnez « Transférer les versions non actuelles des objets entre les classes de stockage », « Expirer les versions actuelles des objets » et « Supprimer définitivement les versions non actuelles des objets »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Actions de la règle de cycle de vie > Les transferts sont facturés à la demande > Sélectionnez « J’accepte que cette règle de cycle de vie entraînera un coût de transfert par demande. »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Transférer les versions non actuelles des objets entre les classes de stockage > Choisir les transferts de classe de stockage > Sélectionnez « Récupération instantanée Glacier »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Transférer les versions non actuelles des objets entre les classes de stockage > Jours après que les objets deviennent non actuels > Entrez « 1 »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Expirer les versions actuelles des objets > Jours après la création de l’objet > Entrez « 7 » ou 15 ou 30 ou ???
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Supprimer définitivement les versions non actuelles des objets > Jours après que les objets deviennent non actuels > Entrez « 91 »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Confirmez que « Examiner les actions de transfert et d’expiration » est correct > Sélectionnez « Créer la règle »
Règle de nettoyage
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Sélectionnez « Créer une règle de cycle de vie »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Nom de la règle de cycle de vie > Entrez le nom de la règle : nettoyage
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Choisir une portée de règle > Sélectionnez « Appliquer à tous les objets du bac »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Choisir une portée de règle > Appliquer à tous les objets du bac > Sélectionnez « J’accepte que cette règle s’applique à tous les objets du bac. »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Actions de la règle de cycle de vie > Sélectionnez « Supprimer définitivement les versions non actuelles des objets » et « Supprimer les marqueurs de suppression d’objets expirés ou les téléversements multipartes incomplets »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Supprimer définitivement les versions non actuelles des objets > Jours après que les objets deviennent non actuels > Entrez « 92 »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Supprimer définitivement les versions non actuelles des objets > Supprimer les marqueurs de suppression d’objets expirés ou les téléversements multipartes incomplets > Marqueurs de suppression d’objets expirés > Sélectionnez « Supprimer les marqueurs de suppression d’objets expirés »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Supprimer définitivement les versions non actuelles des objets > Supprimer les marqueurs de suppression d’objets expirés ou les téléversements multipartes incomplets > Téléversements multipartes incomplets > Sélectionnez « Supprimer les téléversements multipartes incomplets »
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Supprimer définitivement les versions non actuelles des objets > Supprimer les marqueurs de suppression d’objets expirés ou les téléversements multipartes incomplets > Téléversements multipartes incomplets > Supprimer les téléversements multipartes incomplets > Nombre de jours > Entrez « 3 » ou ???
- Amazon S3 > Bacs > votredomaine-sous-domaine-sauvegardes > Gestion > Configuration du cycle de vie > Confirmez que « Examiner les actions de transfert et d’expiration » est correct > Sélectionnez « Créer la règle »
Créer le bac de téléchargements votredomaine-sous-domaine-téléchargements
- Allez dans Amazon S3 > Bacs > Sélectionnez « Créer un bac »
- Amazon S3 > Bacs > Créer un bac > Configuration générale > Confirmez la sélection « Usage général »
- Amazon S3 > Bacs > Créer un bac > Configuration générale > Nom du bac > Entrez le nom du bac de téléchargements, par exemple votredomaine-sous-domaine-téléchargements
- Amazon S3 > Bacs > Créer un bac > Configuration générale > Sélectionnez « ACL activées »
- Amazon S3 > Bacs > Créer un bac > Paramètres de blocage de l’accès public pour ce bac > Désélectionnez « Bloquer tout accès public », puis sélectionnez « Bloquer l’accès public aux bacs et objets accordés via de nouvelles politiques de bac ou de point d’accès publics » et « Bloquer l’accès public et inter-comptes aux bacs et objets via toute politique de bac ou de point d’accès public »
- Amazon S3 > Bacs > Créer un bac > Paramètres de blocage de l’accès public pour ce bac > La désactivation du blocage de tout accès public peut entraîner la mise en accès public de ce bac et des objets qu’il contient > Sélectionnez « J’accepte que les paramètres actuels puissent entraîner la mise en accès public de ce bac et des objets qu’il contient. »
- Amazon S3 > Bacs > Créer un bac > Sélectionnez « Créer un bac »
- Amazon S3 > Bacs > Écran des bacs > Sélectionnez le bac nouvellement créé, par exemple votredomaine-sous-domaine-téléchargements
Revenez pour effectuer l’étape 9 après avoir créé la Distribution #2 - Amazon S3 > Bacs > votredomaine-sous-domaine-téléchargements > Permissions > Stratégie de bac > Sélectionnez Modifier > Collez le JSON depuis Créer la distribution #2 11. CloudFront > Distributions > ID de distribution > Modifier l’origine > Contrôle d’accès à l’origine > Sélectionnez « Enregistrer les modifications »
- Amazon S3 > Bacs > votredomaine-sous-domaine-téléchargements > Permissions > Liste de contrôle d’accès (ACL) > Sélectionnez Modifier > Tout le monde (accès public) > Sélectionnez « Lecture » > Lorsque vous accordez l’accès au groupe Tout le monde ou aux utilisateurs authentifiés, n’importe qui dans le monde peut accéder aux objets de ce bac. Sélectionnez « Je comprends les effets de ces modifications sur mes objets et bacs. » > Sélectionnez « Enregistrer les modifications »
Créer un bac de processus de configuration a-origin-config-bucket
Créez un bac à utiliser pendant le processus de configuration de la Distribution #1. Le nom et la configuration ne sont pas importants car le bac n’est utilisé que temporairement comme origine initiale qui sera supprimée pendant le processus de configuration.
1. Allez dans Amazon S3 > Bacs > Sélectionnez « Créer un bac »
2. Amazon S3 > Bacs > Créer un bac > Configuration générale > Confirmez la sélection « Usage général »
3. Amazon S3 > Bacs > Créer un bac > Configuration générale > Nom du bac > Entrez le nom du bac de téléchargements, par exemple a-origin-config-bucket
4. Parcourez les pages de configuration et « Créer un bac »
Distributions CloudFront
Créez deux distributions AWS S3 CloudFront. L’une pour servir les ressources du site web et la seconde pour servir les ressources du bac de téléchargements.
Créer la distribution #1
Distribution #1
DISCOURSE_CDN_URL
Nom de la distribution : cdn-votredomaine-sous-domaine
Origine : sous-domaine.votredomaine.tld
Nom de domaine de la distribution (URL Cloudfront) : AWS-assigned.cloudfront.net
Noms de domaine alternatifs : discourse-cdn.votredomaine.tld
- Allez dans CloudFront > Distributions > Sélectionnez « Créer »
- CloudFront > Distributions > Créer une distribution > Choisir un plan > Sélectionnez « Paiement à l’usage » > Sélectionnez « Suivant »
- CloudFront > Distributions > Créer une distribution > Commencer > Options de distribution > Nom de la distribution > Entrez le nom de la distribution, par exemple cdn-votredomaine-sous-domaine
- CloudFront > Distributions > Créer une distribution > Commencer > Options de distribution > Description - facultatif > Entrez « cdn-votredomaine-sous-domaine » (Facultatif mais aide à la visibilité)
- CloudFront > Distributions > Créer une distribution > Commencer > Options de distribution > Type de distribution > Confirmez la sélection « Site web ou application unique » > Sélectionnez « Suivant »
- CloudFront > Distributions > Créer une distribution > Spécifier l’origine > Type d’origine > Sélectionnez « Autre » Référez-vous à toute origine AWS ou non AWS via son URL publiquement résoluble.
- CloudFront > Distributions > Créer une distribution > Spécifier l’origine > Origine > Origine personnalisée > Entrez le domaine, par exemple sous-domaine.votredomaine.tld
- CloudFront > Distributions > Créer une distribution > Spécifier l’origine > Paramètres > Paramètres de cache > Sélectionnez « Personnaliser les paramètres de cache »
- CloudFront > Distributions > Créer une distribution > Spécifier l’origine > Paramètres > Paramètres de cache > Stratégie de cache > Dans le menu déroulant, sélectionnez « CachingOptimized » > Sélectionnez « Suivant »
- CloudFront > Distributions > Créer une distribution > Activer la sécurité > faites vos choix - pour ce guide > Sélectionnez « Ne pas activer les protections de sécurité » > Sélectionnez « Suivant »
- CloudFront > Distributions > Créer une distribution > Examiner et créer > Sélectionnez « Créer la distribution »
Si vous utilisez une URL CDN personnalisée → Étape 12 - CloudFront > Distributions > ID de distribution > Noms de domaine alternatifs > Sélectionnez « Ajouter un domaine »
- CloudFront > Distributions > ID de distribution > Noms de domaine alternatifs > Ajouter un domaine > Configurer les domaines > Domaines > Domaines à servir > Entrez le DISCOURSE_CDN_URL, par exemple discourse-cdn.votredomaine.tld > Sélectionnez « Suivant »
Incomplet : Noms de domaine alternatifs : discourse-cdn.votredomaine.tld
Créer la distribution #2
Distribution #2
DISCOURSE_S3_CDN_URL
Nom de la distribution : s3-votredomaine-sous-domaine-téléchargements
Origine : votredomaine-sous-domaine-téléchargements
Nom de domaine de la distribution (URL Cloudfront) : AWS-assigned.cloudfront.net
Noms de domaine alternatifs : s3-cdn.votredomaine.tld
- CloudFront > Distributions > Créer une distribution
- CloudFront > Distributions > Créer une distribution > Choisir un plan > Sélectionnez « Paiement à l’usage » > Sélectionnez « Suivant »
- CloudFront > Distributions > Créer une distribution > Commencer > Options de distribution > Nom de la distribution > Entrez le nom de la distribution, par exemple s3-votredomaine-sous-domaine-téléchargements
- CloudFront > Distributions > Créer une distribution > Commencer > Options de distribution > Description - facultatif > Entrez « s3-votredomaine-sous-domaine-téléchargements » (Facultatif mais aide à la visibilité)
- CloudFront > Distributions > Créer une distribution > Commencer > Options de distribution > Type de distribution > Confirmez la sélection « Site web ou application unique » > Sélectionnez « Suivant »
- CloudFront > Distributions > Créer une distribution > Spécifier l’origine > Type d’origine > Confirmez la sélection « Amazon S3 »
- CloudFront > Distributions > Créer une distribution > Spécifier l’origine > Origine > Origine S3 > Sélectionnez « Parcourir S3 » > Sélectionnez le bac de téléchargements « votredomaine-sous-domaine-téléchargements » > Sélectionnez « Choisir » > Sélectionnez « Suivant »
- CloudFront > Distributions > Créer une distribution > Activer la sécurité > faites vos choix - pour ce guide > Sélectionnez « Ne pas activer les protections de sécurité » > Sélectionnez « Suivant »
- CloudFront > Distributions > Créer une distribution > Examiner et créer > Confirmez que « Examiner et créer » est correct > Sélectionnez « Créer la distribution » → La page d’informations de la distribution nouvellement créée devrait s’ouvrir dans CloudFront > Distributions > ID de distribution
- CloudFront > Distributions > ID de distribution > Origines > Sélectionnez l’origine > Sélectionnez « Modifier »
- CloudFront > Distributions > ID de distribution > Modifier l’origine > Contrôle d’accès à l’origine > ! Vous devez autoriser l’accès à CloudFront en utilisant cette stratégie… > Sélectionnez « Copier la stratégie » > Allez dans Créer le bac de téléchargements 9. Amazon S3 > Bacs > votredomaine-sous-domaine-téléchargements > Permissions > Stratégie de bac
Incomplet : Noms de domaine alternatifs : s3-cdn.votredomaine.tld
Administration Discourse
À jour pour la version Discourse : 2025.12.0-latest
Apportez ces modifications dans l’interface d’administration Discourse
Paramètres de sauvegarde /admin/backups/settings
- Maximum de sauvegardes > Entrez le nombre de sauvegardes à conserver localement
- Sauvegarder avec les téléchargements > Sélectionnez « Inclure les téléchargements dans les sauvegardes planifiées. La désactivation de cette option sauvegardera uniquement la base de données. »
Paramètres S3 /admin/site_settings/category/all_results?filter=S3
- S3 utiliser l’URL CDN pour tous les téléchargements > Sélectionnez « Utiliser l’URL CDN pour tous les fichiers téléchargés vers S3, et pas seulement pour les images. » (Discourse est livré désélectionné)
Modifier la configuration (app.yml) URLs non personnalisées
Modifiez app.yml en apportant les modifications ci-dessous pour les URLs personnalisées ou les URLs CloudFront non personnalisées.
URLs Discourse non personnalisées
Utilisez ceci pour les distributions CloudFront non personnalisées. Votre DISCOURSE_S3_REGION peut être différent.
DISCOURSE_CDN_URL : https://amazonassigned.cloudfront.net
Configuration de stockage S3 (non personnalisée)
## Configuration de stockage S3
DISCOURSE_USE_S3: true
DISCOURSE_S3_REGION: us-east-1
DISCOURSE_S3_ACCESS_KEY_ID: clé masquée
DISCOURSE_S3_SECRET_ACCESS_KEY: clé masquée
DISCOURSE_S3_CDN_URL: https://amazonassigned.cloudfront.net
DISCOURSE_S3_BUCKET: votre-nom-de-bac-téléchargements
DISCOURSE_S3_BACKUP_BUCKET: votre-nom-de-bac-sauvegardes
DISCOURSE_BACKUP_LOCATION: s3
URLs Discourse personnalisées
Configuration DNS
Si vous préférez utiliser des URLs basées sur votredomaine.com pour les CDN, vous devez apporter quelques modifications DNS et ajuster vos URLs CDN.
Astuce : N’oubliez pas d’ajouter discourse-cdn.votredomaine.com et s3-cdn.votredomaine.com en tant que noms de domaine dans « Noms de domaine alternatifs » pour leurs distributions CloudFront respectives.
Configuration DNS si vous souhaitez utiliser des distributions CloudFront personnalisées par domaine.
DISCOURSE_CDN_URL
Enregistrement existant : A discourseinstance.votredomaine.com IP de l'instance Remarque : Il s'agit de l'IP d'installation Discourse existante.
Nouvel enregistrement : A discourse-cdn-cloudfront.votredomaine.com IP de l'instance
Nouvel enregistrement : CNAME discourse-cdn.votredomaine.com -> amazonassigned.cloudfront.net
DISCOURSE_S3_CDN_URL
Nouvel enregistrement : CNAME s3-cdn-cloudfront.votredomaine.com -> amazonassigned.cloudfront.net
Nouvel enregistrement : CNAME s3-cdn.votredomaine.com -> s3-cdn-cloudfront.votredomaine.com
Modifier la configuration (app.yml) URLs personnalisées
Une fois les modifications DNS terminées, vous pouvez modifier votre app.yml en apportant les modifications ci-dessous.
Modifiez DISCOURSE_CDN_URL et/ou DISCOURSE_S3_CDN_URL si vous utilisez des CNAME de domaine pour la distribution CloudFront (amazonassigned.cloudfront.net).
DISCOURSE_CDN_URL : https://discourse-cdn.votredomaine.com
Configuration de stockage S3 (personnalisée)
## Configuration de stockage S3
DISCOURSE_USE_S3: true
DISCOURSE_S3_REGION: us-east-1
DISCOURSE_S3_ACCESS_KEY_ID: clé masquée
DISCOURSE_S3_SECRET_ACCESS_KEY: clé masquée
DISCOURSE_S3_CDN_URL: https://s3-cdn.votredomaine.com
DISCOURSE_S3_BUCKET: votre-nom-de-bac-téléchargements
DISCOURSE_S3_BACKUP_BUCKET: votre-nom-de-bac-sauvegardes
DISCOURSE_BACKUP_LOCATION: s3
Modifications de configuration supplémentaires (app.yml)
Quel que soit l’approche utilisée, URLs personnalisées ou CloudFront, vous aurez besoin de la section after_assets_precompile ci-dessous pour garantir que tout reste à jour lors des reconstructions ultérieures.
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
- vous pouvez avoir plus de plugins
after_assets_precompile:
- exec:
cd: $home
cmd:
- sudo -E -u discourse bundle exec rake s3:upload_assets
- sudo -E -u discourse bundle exec rake s3:expire_missing_assets
Reconstruisez votre instance avec ./launcher rebuild app
Après que ./launcher rebuild app se soit terminé avec succès, exécutez ces commandes rake.
./launcher enter app
rake posts:rebake
rake uploads:migrate_to_s3
rake posts:rebake_uncooked_posts
rake s3:upload_assets
rake s3:expire_missing_assets
Si les commandes rake se terminent sans erreur, vous êtes prêt.
Sur certains sites, la reconstruction initiale échouera avec une erreur liée à s3:upload_assets. Si cela se produit,
vérifiez le paramètre « lecture » sur le bac de téléchargements. S’il est correctement défini, alors,
commentez ou supprimez la section after_assets_precompile :
after_assets_precompile:
- exec:
cd: $home
cmd:
- sudo -E -u discourse bundle exec rake s3:upload_assets
- sudo -E -u discourse bundle exec rake s3:expire_missing_assets
et exécutez à nouveau ./launcher rebuild app. Ensuite, exécutez « rake s3:upload_assets » et « rake s3:expire_missing_assets ».
Si les deux commandes rake se terminent sans erreur, réajoutez ou décommentez la section after_assets_precompile, reconstruisez à nouveau et exécutez toutes les commandes rake listées ci-dessus.
Si l’une des commandes rake génère une erreur ou si la reconstruction échoue à nouveau, il y a quelque chose de mal dans votre app.yml et/ou dans vos configurations AWS S3 et/ou dans vos enregistrements DNS. Bonne chasse ! ![]()
s3-discourse-strategie-votre-utilisateur-iam.txt|pièce jointe (697 octets)