Pas plus compétent que toi, mais je viens de le faire et j’ai réussi avec l’aide de @Pravi.
Les étapes à suivre pour revenir de l’upload S3 à l’état par défaut
Ce n’est pas super simple – faites très attention au texte et aux liens, car si quelque chose tourne mal, ce sera un vrai désordre à remettre en ordre. Mais c’est tout à fait faisable.
Étape 1 – Copier les fichiers de votre bucket S3 vers le dossier public/uploads/default
Installez d’abord AWS CLI dans le conteneur de l’application :
cd /var/discourse
./launcher enter app
sudo apt install awscli
Configurez AWS avec votre ID et mot de passe S3 (généralement simple) :
aws configure
Ensuite, utilisez aws pour copier tout le contenu du bucket dans public/uploads/default/ :
aws s3 sync s3://my-bucket-name/ public/uploads/default/
Étape 2 – Remapper l’URL S3
C’est plus simple en trouvant une image sur votre forum et en inspectant son URL. Vous voulez chaque élément jusqu’au nom du fichier (y compris le dernier /) :
discourse remap //le-long-url-dans-vos-images-jusqu-au-nom-de-fichier /uploads/default/
Étape 3 – Rebake les posts et reconstruire l’application :
rake posts:rebake
exit
./launcher rebuild app
Étape 4 – Désactiver S3
- Désactivez les uploads S3 dans les paramètres (ou dans votre app.yml si vous l’avez configuré ainsi). Si vous utilisiez un CDN, supprimez également le lien vers celui-ci dans les paramètres (sinon, cela ne se désactive pas vraiment).
- Arrêtez votre conteneur. Je l’ai fait en déplaçant le contenu vers un nouveau conteneur comme sauvegarde, comme première étape.
Ouf ! C’est fait. Jusqu’à présent, je n’ai rencontré aucun problème. Allez tester ça !