wd_newbie Posté(e) le 15 août 2023 Posté(e) le 15 août 2023 (modifié) Comme demandé dans le post en en-tête : Niveau : utilisateur confirmé en informatique générale, mais néophyte sur Synology Image : https://hub.docker.com/r/windev/hfsql Interface : Interface Docker de Synology : Container Manager --- Bonjour, Un peu nouveau sur Synology, je m'essaie a configurer mon nouveau 723+. Je dois mettre en place un serveur de base de donnée HFSQL, pour cela j'ai téléchargé l'image et créer un conteneur. La base fonctionne, je n'ai pas de soucis fonctionnel. Par contre ... je n'arrive pas a mapper le répertoire des données (qui est /var/lib/hfsql/ selon les infos sur le serveur) a un fichier accessible par FileStation. J'ai tenté de modifier directement le chemin des données en "/volume1/Datas/12 - HFSQL -bases" depuis l'interface de la base de données, mais j'ai une erreur "Access Denied" J'ai un peu de peine a voir comment empoigner le truc, les infos trouvées ne correspondent pas à ma version de Container Manager, mais Docker, , tout ce que j'arrive a faire quand je fais des tests de mapping, c'est : Le conteneur windev-hfsql-1 s'est arrêté de manière inattendue. Accédez à Container Manager pour plus d'informations et il n'y a pas d'infos dans le journal ... C'est bien à l'endroit en rouge (image ci-dessous) que cela se défini ou je suis complètement à côté. Une idée ? je tourne vraiment en rond ... et je n'ose pas trop mettre en place des données sans avoir tous les paramètres OK ... Merci d'avance Modifié le 17 août 2023 par wd_newbie ajout de l'entete
Lelolo Posté(e) le 16 août 2023 Posté(e) le 16 août 2023 Oui, c'est à cet endroit là. Mais comme ton container tourne, tu ne peux pas modifier ces paramètres (c'est marqué, d'ailleurs)
wd_newbie Posté(e) le 16 août 2023 Auteur Posté(e) le 16 août 2023 Merci pour le retour, mais oui, j'ai bien arrêté / redémarré le container pour faire mes tests ... c'est vraiment que je ne compèrends pas trop ce que je doit mettre dedans... On me demande un dossier (+ ajouter un dossier) et un fichier (+ ajouter un fichier) je ne vois pas trop comment mapper un dossier sur fichier ou vice-versa. Si je prend le chemin des datas dans les paramètres du serveur, ils seraient en /var/lib/hfsql/, et j'aimerais pouvoir y accéder par le FileStation (et samba)
.Shad. Posté(e) le 17 août 2023 Posté(e) le 17 août 2023 Merci d'éditer le premier post en suivant ces quelques demandes :
.Shad. Posté(e) le 17 août 2023 Posté(e) le 17 août 2023 Sinon pour tes questions : L'image conseille de créer un volume docker, càd un volume qui va se créer automatiquement dans les fichiers système de DSM. C'est la meilleure chose à faire quand les permissions UNIX sont exotiques et ne sont pas adaptées à un montage dans un dossier partagé où interviennent les ACL de DSM. C'est moins pratique quand on souhaite sauvegarder les données, car elles se trouvent justement hors de Filestation. Ce que j'ai créé comme projet dans Container Manager : version: "2.1" services: windev-hfsql: image: windev/hfsql:FR280085e container_name: hfsql network_mode: bridge environment: - HFSQL_PASSWORD=mybestpassword ports: - 4923:4900 volumes: - /volume1/docker/windev_test:/var/lib/hfsql restart: unless-stopped Si je ne fais rien de plus, mon conteneur s'arrête également, très probablement car il ne sait pas écrire dans le dossier avec son user "hfsql" (voir Dockerfile : https://hub.docker.com/layers/windev/hfsql/FR280085e/images/sha256-8f885c8bc17a9cb1cf3388fd9b6e4663b9fa70ea02200716fa275f11e7036de0?context=explore) Donc deux possibilités : - Tu chmod 777 le dossier, c'est ce que j'ai fait et ça fonctionne. - Tu crées un volume docker, et tu devras trouver un moyen de sauvegarder les données (rsync, script en bash ou pyhton, etc...) Avec un volume Docker en revanche ça ressemblera à : version: "2.1" services: windev-hfsql: image: windev/hfsql:FR280085e container_name: hfsql network_mode: bridge environment: - HFSQL_PASSWORD=mybestpassword ports: - 4923:4900 volumes: - hfsql:/var/lib/hfsql restart: unless-stopped volumes: hfsql: Dans les deux cas, si les données sont importantes, je ne suis pas certain qu'il soit judicieux d'utiliser Docker pour cette image pour une utilisation en production professionnelle. Notamment du fait que l'image ne semble pas spécialement bien travaillée. Et du Windev on en bouffe à foison au boulot, c'est une vraie plaie, nos informaticiens sont pas foutus de travailler avec une base de données mysql. Ce sont des bricoleurs.
wd_newbie Posté(e) le 17 août 2023 Auteur Posté(e) le 17 août 2023 Merci pour tes retours ... qui sont un peu chinois pour moi , désolé (vraiment newbie en Synology). Quand je lance mon Docker dans Container Manager, je : - crée un nouveau Docker - sélectionne mon image (récupérée dans "Registre" auparavant) - j'active le redémarrage automatique - lie le port 4900 → 4900 - C'est ici dans "Paramètre de Volume" que ça tousse ... Envoie , on crée le container ... ça devrait être simple ... en tout cas dans la doc 🙂 Je ne vois pas trop par ou passer pour chmoder le répertoire et/ou envoyer des commandes ... en Putty a distance ? Désolé si mes questions semblent un peu en dehors des clous !
.Shad. Posté(e) le 17 août 2023 Posté(e) le 17 août 2023 Oui pour chmoder c'est via terminal, ou créer une tâche planifiée qui va le faire. Mais c'est plus simple via le terminal directement. L'autre solution, de créer un "volume Docker", peut se faire par la création d'un projet dans Container Manager, et en rédigeant le fichier compose.yaml tel que je l'ai fait. Si tes données sont importantes je privilégierais plutôt la création d'une VM et d'une installation native.
wd_newbie Posté(e) le 18 août 2023 Auteur Posté(e) le 18 août 2023 Quand tu dis : Si tes données sont importantes je privilégierais plutôt la création d'une VM et d'une installation native. Je m'étais tourné vers Docker en pensant qu'au niveau des ressources du NAS ce serait plus léger plutôt qu'une VM complète ...mais encore une fois je débute 🙂
.Shad. Posté(e) le 18 août 2023 Posté(e) le 18 août 2023 (modifié) C'est tout à fait vrai, c'est plus léger car les ressources ne sont pas allouées comme sur une VM. Ca a l'inconvénient éventuel de pouvoir bouffer toute la RAM de l'hôte en cas de problème, une VM sera limitée par ce qu'on lui a donné, l'hôte peut donc être protégé. Ce que je dis c'est que les fichiers sont visiblement écrits soit par root soit un utilisateur incompatible avec les ACL de Synology. En chmodant on supprime les ACL du dossier où se trouvera la base de données, on peut donc autoriser n'importe quel utilisateur exotique à écrire dans le dossier chmodé. Mais tu ne réponds pas depuis le début sur la criticité des données. Si c'est pour une utilisation pro, je déconseillerais l'utilisation de cette image Docker. La documentation laisse à désirer, et l'image n'est pas bien construite pour être utilisée sur un NAS Synology. Si tu veux voir des exemples d'image adaptées pour une utilisation conjointe avec DSM, tu peux aller voir du côté de Home | LinuxServer.io (mais qui ne propose pas d'image Windev, c'est juste pour l'exemple). En conséquence, mon conseil est qu'une VM ou une installation bare-metal sera plus indiquée suivant la criticité, si c'est juste pour la curiosité, je t'invite à suivre la méthode en chmodant le dossier de la base de données. Modifié le 18 août 2023 par .Shad.
wd_newbie Posté(e) le 20 août 2023 Auteur Posté(e) le 20 août 2023 Bon, pour la criticité des données,c'est critique sans l'être vraiment ... je m'explique : j’utilise HFSQL pour le gestionnaire de source de Windev (mais j'utilise plutôt du SQLServer ou MySQL pour les projets 😉). Comme je travaille seul, le gestionnaire me permet de travailler en déplacement ou au bureau avec des machines différentes en ayant les sources toujours à jour, donc si je perds les données j'ai toujours au moins une copie à jour sur une des trois machines que j'utilise (en plus des backups habituels). Bon pour ce qui est de la partie "pratique", j'ai - installé putty - activé la connexion SSH Tentative de connexion sur le syno avec mon user habituel : - cd /var/lib - ls - ... pas de répertoire /hfsql ... donc pas de chmod ... J'active l'user "admin" , connexion avec celui-ci en SSH : - cd /var/lib - ls - ... pas de répertoire /hfsql ... donc pas de chmod ... Je passe a côté d'un truc, mais quoi ...
wd_newbie Posté(e) le 20 août 2023 Auteur Posté(e) le 20 août 2023 Avec root aussi ... Connexion en admin --> sudo -i --> root@synology723 , mais pas plus de dossier ...
Lelolo Posté(e) le 21 août 2023 Posté(e) le 21 août 2023 Et si tu essaies de créer le dossier concerné, ça te dit qu'il existe déjà ?
Mohammed BENASKER Posté(e) le 21 août 2023 Posté(e) le 21 août 2023 Bonjour, J'ai eu du mal à résoudre ce problème moi même mais avec une bonne volonté on y arrive ;p. * Dans paramètre du volume tu cré ou selectionne un dossier qui est déjà créé sur ton synology et tu le lie/pointe avec " /var/lib/hfsql " * Dans paramètre du volume tu crée ou selectionne un dossier qui est déjà créé sur ton synology et tu le le lie avec " /opt/hfsql/backup " * paramètre des ports tu choisis un port pour le rediriger vers le port du conteneur(4900) pour être sur choisis entre 49000 à 63000. * Dans environnement tu laisses tel quel (je n'ai pas encore compris l'histoire du HFSQL_PASSWORD) Petit oubli, pour l'autorisation des dossiers que tu vas créer il faut dans DSFILE sur le dossier en question click droit -> propriété->onglet permissions->créer-> dans utilisateur ou groupe tu selectionne "EVERYONE" et tu autorise et tu coches LIRE ET ECRIRE. Bonne soirée !
.Shad. Posté(e) le 22 août 2023 Posté(e) le 22 août 2023 Le 20/08/2023 à 19:19, wd_newbie a dit : Tentative de connexion sur le syno avec mon user habituel : - cd /var/lib - ls - ... pas de répertoire /hfsql ... donc pas de chmod ... J'active l'user "admin" , connexion avec celui-ci en SSH : - cd /var/lib - ls - ... pas de répertoire /hfsql ... donc pas de chmod ... Je passe a côté d'un truc, mais quoi ... Tu es simplement passé à côté du principe des volumes dans Docker. Tu ne trouveras jamais ton dossier hfsql dans le /var/lib du NAS, ces données sont dans le conteneur. Et quand tu montes un volume, tu dis où les données contenues dans /var/lib/hfsql doivent se trouver sur le NAS. Donc je reprends ce que je te disais au début : a-e-l@GARRUS:/volume1/docker$ ll total 0 drwxrwxrwx+ 1 root root 212 Aug 17 07:23 . drwxr-xr-x 1 root root 1068 Aug 22 15:58 .. drwxrwxrwx+ 1 root root 24 Aug 20 08:08 @eaDir drwxrwxrwx+ 1 a-e-l users 22 Apr 29 15:52 interfaces drwxrwxrwx+ 1 a-e-l users 40 Dec 6 2020 iperf3 drwxrwxrwx+ 1 a-e-l users 120 Jun 5 18:31 iris drwxrwxrwx+ 1 a-e-l users 36 Apr 12 16:10 mediawiki drwxrwxrwx+ 1 a-e-l users 34 May 5 21:37 networks drwxrwxrwx+ 1 pihole pihole 46 Jan 20 2023 pi-hole drwxrwxrwx+ 1 a-e-l users 94 Jun 19 2022 portainer-agent drwxrwxrwx+ 1 root root 22 Jun 11 07:52 '#recycle' drwxrwxrwx+ 1 telegraf users 120 Aug 8 22:16 telegraf drwxrwxrwx+ 1 root root 0 Sep 12 2019 @tmp drwxrwxrwx+ 1 a-e-l users 108 Nov 1 2020 watchtower drwxrwxrwx 1 a-e-l users 82 Aug 17 07:31 windev_test on voit que pour le dossier windev_test, il n'y a pas de "+" à côté des permissions UNIX, c'est une conséquence du chmod 777 que j'ai effectué. Je vais aller dans ce dossier, voir si mon conteneur a pu écrire ces données, mais c'est forcément le cas car les permissions sont pleines : a-e-l@GARRUS:/volume1/docker$ ll windev_test/ total 4 drwxrwxrwx 1 a-e-l users 82 Aug 17 07:31 . drwxrwxrwx+ 1 root root 212 Aug 17 07:23 .. -rwxrwxrwx+ 1 root root 363 Aug 17 07:28 compose.yaml drwxr-xr-x 1 4900 4900 172 Aug 17 07:31 __jnl drwxr-xr-x 1 4900 4900 0 Aug 17 07:31 __jnlbackup drwxr-xr-x 1 4900 4900 1004 Aug 17 07:31 __system drwxr-xr-x 1 4900 4900 220 Aug 17 07:31 __trs Oui il a pu écrire, on remarque quoi ? ce que je disais, qu'il y a un utilisateur avec une ID exotique (4900) utilisé par Windev, d'où la nécessité de chmodder. Mais ainsi je n'ai aucun problème de lecture écriture. Et l'application fonctionnera sans encombre.
wd_newbie Posté(e) le 23 août 2023 Auteur Posté(e) le 23 août 2023 Un grand merci a tous, je vais avoir quelques jours de vacances pour digérer tout ça ... je vais attendre le retour car j'ai passé le GDS sur le Syno pour pouvoir bosser en vacances (🫤) Même si pour l'instant je ne sais pas trop ou sont mes données ... ça marche et je ne vais pas prendre le risque de tout casser en étant à 500 km de la bête 😀 Je mettrai la suite de mes aventures ici ... 1
wd_newbie Posté(e) le 15 septembre 2023 Auteur Posté(e) le 15 septembre 2023 (modifié) Hello, de retour de vacances, je me suis penché à nouveau sur mon soucis de serveur HFSQL : - sauvegardé toutes les bases actuelles - supprimé le docker installé + fichiers liés Ensuite : - créé deux répertoires dans le dossier "Docker", ça me semblait le plus logique, vu que la désinstallation du docker ne me supprimait les dossiers que j'avais pour tests (?) HFSQL\datas HFSQL\backup - passé les droits de Everyone en RW sur le HFSQ avec répercussion sur les sous-dossier - remis en place le docker en lui mettant les infos données par Mohammed - redémarré le serveur et c'est magique, j'ai mes dossiers et mes fichiers accessibles dans datas et backup ! Donc pour moi, à moins d'avoir fait une c**** de mettre mes datas dans le \docker\ (??) , c'est résolu ! Merci à tous pour votre aide ! Modifié le 16 septembre 2023 par wd_newbie
Lelolo Posté(e) le 19 septembre 2023 Posté(e) le 19 septembre 2023 Le problème est maintenant résolu. N'hésitez pas à ouvrir un nouveau message en cas de problème. Ceci est une réponse automatique.
Messages recommandés