Synology Accès externe au NAS

WordPress était dispo dans leur catalogue d’app, donc je n’ai rien codé
La pile proposé par Portainer est celle-ci :
Code:
version: '2'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: ${MYSQL_DATABASE_PASSWORD}
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     image: wordpress:latest
     ports:
       - 80
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress

volumes:
    db_data:

C'est trop basique pour que tu puisses utiliser pleinement WP en prod et même en test (pas de volume web, pas de redis, pas de conf d'upload, pas de port en correspondance ...). Il te faut revoir ta copie à ce niveau.
Tu peux suivre l'intall que je propose pour WP en Docker mais il faut adapter le début du tuto et le code pour Syno et Portainer - pas très compliqué (là c'est spé pour CasaOS).
 
Cher Grand maître Jedi, je pensais que tu t'étais rendu compte que j'étais un Padawan qui se lance dans l'aventure de l'auto-hébergement avec beaucoup d'espoir mais pas beaucoup de compétence. Je me croyais geek mais là je suis clairement au-delà de mes capacités! et donc... j'ai viré le Wordpress que j'avais installé avec la "pile insuffisante" et j'ai essayé de suivre ton tuto "à adapter". J'ai trouvé comment faire "create stack" dans Portainer et copier-coller le code mais l'adapter! Je n'ai jamais codé de ma vie et je ne sais pas du tout ce que le code veut dire donc... je n'ai aucune idée de comment l'adapter.
Ma question est donc : tu penses pouvoir m'aider malgré mon ignorance crasse ou il vaut mieux que je me rabatte sur Web Station ou une autre solution plus accessible ?
Au fait est-il possible que Web Station parasite l'URL ? je devrais le désactiver ?
En tout cas, merci beaucoup pour votre patience!
 
Au fait est-il possible que Web Station parasite l'URL ? je devrais le désactiver ?
Non pas de souci à ce niveau, tu peux mettre des apps sur web station et d'autres sur docker.

ou il vaut mieux que je me rabatte sur Web Station
Ce sera aussi compliqué si tu débutes voire +
J'ai trouvé comment faire "create stack" dans Portainer et copier-coller le code
C'est le code que tu as utilisé qu'il nous fallait communiquer. Bon pas grave, je regarde ce que propose Marius ...

Bon fait ... il te faut suivre les étapes suivantes (pour Syno) :

0. Supprimer ta pile sur Portainer + supprimer ton dossier wordpress dans docker

1. Créer un NDD (DDNS ou Wildcard) dédié au WordPress

2. Le mettre en correspondance dans Sécurité -> Certificats -> Paramètres
Tu dois mettre ton ndd - ex : monsite.grimm.syno.me (service) = monsite.grimm.syno.me (certificat) ici sur l'illustration (ce n'est pas un Syno en prod donc juste pour le chemin).

1774434782839.png


2. Créer 3 sous-dossiers (c'est mieux pour la gestion de WP) qui seront dans le dossier docker -> wordpress
[ db + redis + web ]

1774720888626.png

3. Créer un fichier uploads.ini et le mettre dans le dossier web
(le contenu ci dessous pour uploader jusqu'à 1Go)

Code:
file_uploads = On
memory_limit = 256M
upload_max_filesize = 1000M
post_max_size = 1000M
max_execution_time = 600

4. Copier coller le code ci-dessous dans Portainer (comme indiqué sur le tuto de Marius) - J'ai retiré phpmyadmin qui ne sert à rien sur WP en docker + mis WP en latest (version actuellement à niveau) + MariaDB en latest (se met à niveau au fur et à mesure).
Code:
services:
  wordpress:
    image: wordpress:latest
    container_name: WordPress
    hostname: wordpress
    healthcheck:
     test: curl -f http://localhost:80/ || exit 1
    ports:
      - 8195:80
    depends_on:
      db:
        condition: service_started
      redis:
        condition: service_healthy
    volumes:
      - /volume1/docker/wordpress/web:/var/www/html:rw
      - /volume1/docker/wordpress/web/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini:rw
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: grimm
      WORDPRESS_DB_PASSWORD: grimmpassword
      WORDPRESS_DB_NAME: grimm_db
    restart: on-failure:5

  db:
    image: mariadb:latest
    container_name: WordPress-DB
    security_opt:
      - no-new-privileges:true
    hostname: wordpress-db
    environment:
      MYSQL_DATABASE: grimm_db
      MYSQL_USER: grimm
      MYSQL_PASSWORD: grimmpassword
      MYSQL_ROOT_PASSWORD: rootpass
      TZ: Europe/Paris
    volumes:
      - /volume1/docker/wordpress/db:/var/lib/mysql:rw
    restart: on-failure:5

  redis:
    image: redis
    hostname: wordpress-redis
    container_name: WordPress-REDIS
    user: 1026:100
    healthcheck:
     test: ["CMD-SHELL", "redis-cli ping || exit 1"]
    volumes:
      - /volume1/docker/wordpress/redis:/data:rw
    environment:
      TZ: Europe/Paris
    restart: on-failure:5

5. Une fois la pile lancée sur Portainer tu ouvres ton navigateur sur le NDD dédié à ton WP. Si on te propose de choisir la langue c'est bon - si une erreur est indiquée fais nous une capture d'écran.

Puis, tu suis le tuto de Marius pour activer redis ...

Tiens nous au courant ;)
 

Pièces jointes

  • 1774434867439.png
    1774434867439.png
    26.8 KB · Affichages: 18
  • 1774720391189.png
    1774720391189.png
    41.5 KB · Affichages: 2
Dernière édition:
J'ai aussi testé ce tuto
Je n'utilise plus Syno - donc pas vérifié ce tuto depuis longtemps.
Cependant, à l'époque il y avait des problèmes d'autorisation d'accès aux dossiers - je ne sais pas si c'est toujours d'actualité :unsure: Si tu as des soucis fais l'opération que j'indiquais (ça mange pas de pain) et relance la pile :

... extrait ...
"Important : Depuis qques temps, les autorisations d’accès à votre dossier wordpress changent lors du déploiement de la pile – Avant de configurer, vous retournez dans File Station puis : ->docker->wordpress (ou nom donné si changement)->Propriétés (clic droit) et changer le propriétaire par votre id. Puis dans l'onglet -> Permissions (retirer les utilisateurs créés pendant le déploiement souvent des numéros) -> créer (si pas présent) -> votre id admin (control) + SYSTEM (lire+écrire) + Everyone (lire) -> Appliquer à ce dossier ... Valider."
...


NB sur l'illustration ci-dessous WP n'est pas lancé c'est juste pour t'indiquer le chemin

1774438339409.png
 

Pièces jointes

  • 1774438040534.png
    1774438040534.png
    59.8 KB · Affichages: 0
Alors.... résultat des courses, quand je vais sur le lien fourni par Portainer, j'ai "error establishing a database connection", ce que semble corroborer ce que me dit Portainer. Il y a un problème avec la base de données WP.containers.png

Secundo, je crois que je ne suis pas encore bon avec le DDNS.
quand je vais sur https://grimm68.synology.me, j'ai l'écran qui me dis "your website is not setup yet" comme depuis le début.
quand je vais sur https://wordpress.grimm68.synology.me, j'ai "ce site est inaccessible" avec "ERR_CONNECTION_REFUSED". Curieusement il semble rajouter le port 32768 alors que plus rien ne pointe vers lui.
Je crois pourtant avoir fait le setup comme tu m'as dit...
ddns.pngrevprox.pngwildcard.png

J'ai vérifié les autorisations sur le dossier wordpress dans DSM, pas de problème.
Je n'ai pas fait la suite du tuto de Marius pour l'instant.
C'est grave docteur ?
 
C'est grave docteur ?
1. Au niveau du Proxy Inversé à Destination c'est HTTP
1774720804842.png


2. Tu as copier/coller le code que je t'ai fourni au poste #25 ??? dans Portainer
  • Si oui le port de destination http -> localhost -> 8195 (Proxy Inversé)
  • Si tu as fait des modifs peux-tu nous communiquer le code que tu as collé dans Portainer
3. Si tu as copié le code que je t'ai fourni, tu as bien fait 3 sous dossiers à wordpress (je viens de voir que ma capture d'écran est fausse je vais la changer) - docker -> wordpress -> 3 sous dossiers (redis, db, web)
quand je vais sur https://grimm68.synology.me, j'ai l'écran qui me dis "your website is not setup yet" comme depuis le début.
Cette adresse correspond à ton DSM donc pour accéder à DSM tu dois faire https://grimm68.synology.me + port (5001 par défaut)
 

Pièces jointes

  • 1774720755397.png
    1774720755397.png
    31.7 KB · Affichages: 1
J'ai corrigé le proxy inversé en http.
J'avais copié ton code sans modifier un seul caractère et j'ai bien fait le dossier comme suit :
Capture d’écran 2026-03-28 214244.png
c'est normal que le dossier db et redis soient vides ?
 
c'est normal que le dossier db et redis soient vides ?
Bon je viens de tester sur mon DSM virtuel avec Portainer et me suis rerouvé dans le même cas que toi -> capture de ton poste #27

En fait c'est toujours un problème d'autorisations des dossiers voilà la procédure (si tu as toujours laissé le code wordpress sur Portainer).

1. File Station -> docker -> wordpress et (clic droit) Propriétés vérifier que c'est bien ton ID d'admin du DSM (+ cocher appliquer à ce dossier etc) et valider.

1774741604381.png


2. Ouvrir l'onglet Permissions et ajouter Créer ton ID admin (ici morgyann) + SYSTEM - avec les autorisations comme sur ma capture d'écran et cocher " Appliquer à ce dossier ..." + Sauvegarder le tout

NB : Si les permissions sont grisées, il faut les rendre explicites avec le bouton Options avancées
1774745595785.png


1774742015552.png


3. Retourne sur Portainer et ouvre Stack -> wordpress

1774742299053.png

4. Coche les 3 containers

1774742364887.png

4. Clique sur le bouton restart
(à droite) - patiente le temps du rechargement et les 3 devraient être au vert :)

1774742431172.png


5.
Retourne sur DSM -> File Station et ouvre les dossiers wp

db

1774742718932.png

redis

1774742759154.png

web

1774742795930.png



6. Ouvre un onglet sur ton navigateur sur https://wordpress.grimm.syno.me (IMPORTANT : il faut configurer le wp sur le NDD) - la config te ton Proxy Inversé semble bonne (tu as bien ajouté le web socket ?)

1774743103986.png

Bizarre, le mien est en anglais ? Bon c'est jute pour tester puisqu'après on passe sur ton NDD d'Infomaniak ...
 
Dernière édition:
1. Wordpress : 🍾🍾🍾 tu avais raison (encore!!), le Wordpress apparait avec exactement le même écran (en anglais)! J'ai un peu galéré parce que j'avais oublié de mettre une autorisation sur le dossier à SYSTEM et il me changeait le owner du dossier à chaque restart mais maintenant c'est bon!

2. Par contre, l'accès par l'URL souhaité ne marche toujours pas. Je pense savoir pourquoi cependant. Quand je passe le reverse proxy de https à http, j'ai le message d'erreur suivant : "Ce numéro de port est utilisé par une autre application. Veuillez entrer un numéro différent"
Le port 443 est aussi utilisé comme port par défaut par webstation et ce n'est apparemment pas changeable. le bouton modifier est grisé.webstation.png
J'ai essayé de désinstaller Webstation mais je n'arrive pas à l'enlever complètement parce que je ne sais plus quel mot de passe j'ai mis sur la base de données.
J'ai arrêté WebStation mais ça ne suffit pas à débloquer.
J'ai essayé de déplacer le Wordpress sur un autre port dans le reverse proxy mais ça veut dire que je dois le modifier dans la Freebox et le routeur à nouveau. et peut-être ailleurs ? Je verrai demain si le redémarrage de la Freebox a été efficace (pas possible maintenant)

Sinon, j'ai commencé avec le Wordpress mais je pense qu'il n'est pas complètement opérationnel : je ne peux pas le passer d'anglais en français, ni installer un thème, ni mettre à jour. Je réessaierai quand l'URL marchera.

Encore merci pour ton suivi et ta patience!