This site uses cookies! Learn More

Ce site utilise des cookies !

En continuant à utiliser ce site, vous vous engagez à nous permettre de stocker des cookies sur votre ordinateur.

 

Si nous utilisons des cookies et retenons des données anonymes, c’est pour nous aider à mieux gérer notre mesure d’audience, aider nos partenaires commerciaux à nous rémunérer et nos partenaires publicitaires à proposer des annonces qui vous correspondent.

 

Grâce à ces cookies, le forum est en mesure de savoir qui écrit un message et utile pour le système d'authentification.

 

En cliquant sur « J'accepte », vous acceptez l'utilisation par NAS-Forum de cookies publicitaires et de mesure d'audience fine.

[TUTO] Docker : Introduction


Messages recommandés

il y a 11 minutes, Lud a dit :

puis applique les droits associés au compte utilisateur spécifié dans l'application...

C'est exactement ce qu'il se passe pourtant. Avec le PUID et PGID on mappe un conteneur et un groupe de l'hôte vers le conteneur.

Il n'y a pas de question de mot de passe quand tu tentes d'accéder à un fichier sous Linux. Si tu essaies de parcourir avec un utilisateur lambda un dossier avec des permissions rwxrwx--- appartenant à root:root, tu auras un message de refus.

A aucun moment on te demande un mot de passe, sauf si tu invoques le mode super-utilisateur via "sudo". Mais c'est sudo qui amène une invitation de mot de passe, pas le fait de lire, écrire ou traverser/exécuter.

Je ne sais pas si ça répond à ta question, si pas une impression d'écran illustrant ton interrogation m'aiderait à mieux cerner ta demande.

Lien à poster
Partager sur d’autres sites
  • Réponses 247
  • Created
  • Dernière réponse

Top Posters In This Topic

Top Posters In This Topic

Popular Posts

1. Qu'est-ce que Docker ? Docker est un outil qui peut empaqueter une application et ses dépendances dans un conteneur isolé, qui pourra être exécuté sur n'importe quel serveur. On ne parle pas i

Quand tu es sur Radarr,  c'est les dossier du conteneur que tu dois chercher et non ceux de l'hote (ici ton nas ) Donc dans radarr tu doit chercher /movies et non /volume1...

@MilesTEG1 Salut, Heimdall est simpliste, c'est sa force, mais cela peut aussi etre sa faiblesse ! Beaucoup plus complet, il y a Organizerr ! Mais attention, c'est tres tres complet 😄

Posted Images

Un exemple :

Voici les droits de mon dossier partagé "music" : d---------+ root root music

Clairement, ce ne sont pas les permissions qui me laissent passer.

Pour les ACL : user:<nom_utilisateur>:allow:r-x---a-R-c--:fd--  (level:0)

Les ACL me laissent passer en lecture seule.

Je vois ce que tu veux dire, mais il y a quelque chose qui me chiffonne. C'est juste que je n'arrive pas à mettre précisément le doigt dessus. ^^

Du point de vue de la sécurité, je ne comprends pas comment on peut s'affranchir des restrictions d'accès uniquement en récupérant l'UID et le GID d'un utilisateur avec privilèges.

Si je mets les UID et GID de mon administrateur, ça veut dire que j'ai accès aux mêmes choses, mêmes droits de lecture/ écriture, sans avoir à préciser de mot de passe ?

Lien à poster
Partager sur d’autres sites
Il y a 1 heure, Lud a dit :

Pour les ACL : user:<nom_utilisateur>:allow:r-x---a-R-c--:fd--  (level:0)

Les ACL me laissent passer en lecture seule.

Je veux bien que tu m'expliques comment voir et lire les ACL, j'ai jamais su avoir autre chose que le "+" en fin de permissions.

Il y a 1 heure, Lud a dit :

Du point de vue de la sécurité, je ne comprends pas comment on peut s'affranchir des restrictions d'accès uniquement en récupérant l'UID et le GID d'un utilisateur avec privilèges.

C'est bien la magie du truc, et c'est pour ça généralement qu'on n'utilise pas l'utilisateur admin pour exécuter un conteneur. Car il pourra faire ce qu'il veut sur les volumes de l'hôte montés dans le conteneur.

Utilisateur sans droit particulier ou utilisateur spécifique avec les droits minimum pour la bonne exécution du conteneur.

Lien à poster
Partager sur d’autres sites

Merci @.Shad..

Je te réponds rapidement, pas trop de temps là.

Pour les ACL, tout est détaillé si tu tapes :

synoacltool -h

Et l'équivalent du getfacl est synoacltool -get.

Exemple :

synoacltool -get /volume1/music

 

Lien à poster
Partager sur d’autres sites
  • 2 weeks later...

Bonjour,

 

Merci pour ce tuto. Il m'est d'une grande aide pour passer le pas et rentrer dans la logique Docker. J'ai d'ailleurs assez vite compris qu'il était préférable d'utiliser Docker-compose pour la gestion des conteneurs et le GUI DSM Docker pour la surveillance.

Je suis donc allé voir à droite à gauche les tutos sur la toile. Je suis également allé voir la doc officielle ici : https://docs.docker.com/compose/  et il y a un élément que je ne retrouve pas dans le tuto : qu'est-ce qu'un Dockerfile ?

Lien à poster
Partager sur d’autres sites

Je n'en parle pas car j'ai à peine joué avec et donc je pense que ce que tu trouveras ailleurs sera plus pertinent.
Mais c'est très simple, un Dockerfile va comprendre les étapes de construction de ton image, un exemple simple :

https://github.com/linuxserver/docker-deluge/blob/master/Dockerfile

A l'étape FROM on définit quel OS va être utilisé, on va souvent prendre quelque chose de léger comme une alpine.
LABEL permet d'ajouter des labels à l'image que tu vas créer. c'est entre autres un outil pour favoriser la communication entre conteneur (demander par exemple à un conteneur d'ajouter sur tous les autres conteneurs disposant de telle ou telle valeur de tag untel).

ENV définit des variables d'environnement, comme dans un script, docker-compose ou Docker via DSM.

RUN est le plus important car c'est la procédure de mise en place de tes applications. Ici ça se déchiffre assez bien :

- Mise à jour d'apt et ajout de nouveaux dépôts
- Installation de déluge et ses dépendances
- On supprime les fichiers temporaires inutiles pour réduire la taille de l'image

COPY permet à une personne qui build l'image d'ajouter des fichiers locaux dans l'image.

EXPOSE et VOLUME permettent d'exposer les ports et volumes dont l'utilisateur va pouvoir se servir.

Lien à poster
Partager sur d’autres sites

Bonjour,

je commence à y voir plus clair. Je suis toujours dans l'étude de mon premier conteneur : linuxserver Sabnzbd (Github ici). En lisant l'aide sur Docker Compose je voyais que la première étape à son utilisation était la création d'un fichier Dockerfile. Or, cette partie est rarement abordée quel que soit le tuto trouvé. Par contre, en fouillant sur le Github de linuxserver/Sabnzbd on trouve ce fichier.

@.Shad. j'en conclus alors que ce fichier est généralement fourni par le développeur et est inclus dans l'image d'un conteneur Docker. Est-ce que j'ai raison ?

 

J'ai une autre question, mais concernant cette fois les fichiers docker-compose. La première ligne mentionne systématiquement la version. Exemple :

version: "3.9"

De quelle version s'agit-il ? J'ai mis à jour ma version de Docker-compose et je suis en 1.29.1

Lien à poster
Partager sur d’autres sites

Alors oui, c'est le maximum que prendra en compte docker en version pour tes fichiers compose.

Cela veut donc dire que tu est limité dans les options disponible. Tu trrouvera les différences ici par exemple : https://docs.docker.com/compose/compose-file/compose-versioning/#version-21

Aussi certains syntaxe peuveut changer entre version, et un compose ecrit en v2 , qu'on déclare en v3 peut ne pas etre interprété correctement ( meme si c'est asser rare car sur des options peu commune a nos utilisations )

Lien à poster
Partager sur d’autres sites

@Diplo95

Bonjour,

J'attire ton attention sur la valeur de cette version, pour certain conteneur "éxotiques" mettre une version trop récente peut poser problème car ces conteneurs peuvent utiliser encore des fonctionnalités qui sont dépréciées avec les nouvelles version de docker-compose. Dans ce cas, il vaut mieux je crois, laisser la version indiquée pour le conteneur.

@.Shad. et @EVOTk corrigez moi si je dis une c...ie ou si c'est mal exprimé.

PS : Arreeuuhh !!! grillé par @EVOTk 😜

Cordialement

oracle7😉

Lien à poster
Partager sur d’autres sites

Pour résumer grossièrement, à partir des versions 3 c'est plus adapté pour Docker Swarm, qui gère l'aspect haute disponibilité et multi-hôtes.

Dans 95% des cas tu peux utiliser la version 2.1

Le Dockerfile c'est pour créer l'image toi-même, typiquement si c'est ton programme ou si tu veux apporter des modifications à la version disponible publiquement.

La plupart du temps tu n'en feras rien car l'image publique satisfera à ton besoin.

Lien à poster
Partager sur d’autres sites

Je galère un peu avec les volumes 😀

Voici mon problème : j'utilise sabnzbd pour télécharger des fichiers. Ils sont déposés dans

volume1/downloads

J'essaie maintenant de faire fonctionner Radarr avec l'image linuxserver/Radarr
J'ai donc créé un fichier docker-compose.yml tel que décrit dans le github :

---
version: "2.1"
services:
  radarr:
    image: ghcr.io/linuxserver/radarr
    container_name: radarr
    environment:
      - PUID=1030
      - PGID=100
      - TZ=Europe/Paris
      - UMASK_SET=022
    volumes:
      - /volume1/docker/radarr/config:/config
      - /volume1/video:/movies
      - /volume1/downloads:/downloads
    ports:
      - 7878:7878
    restart: unless-stopped

/volume1/video est ma médiathèque déjà constituée. Ainsi, j'espère que Radarr puisse venir y chercher des infos pour mettre à jour sa base de données. Mon but également est qu'il aille chercher les films téléchargés dans /volume1/downloads/ afin qu'il les déplace et les classe dans /volume1/video

Le conteneur se lance correctement et j'arrive à accéder à Radarr qui est donc fonctionnel. Cependant, lorsque je veux qu'il construise sa base de données, je n'ai pas accès à /volume1/video :

502687851_Capturedcran2021-05-02173831.thumb.jpg.ebe58ee8dea631cd2b564a585ec93b9e.jpg

J'ai pourtant changé les droits pour que le dossier video et downloads aient le même propriétaire :

1744976683_Capturedcran2021-05-02174121.jpg.123eabcd567032f1c66c624960b6bb0b.jpg

J'avoue que je patauge un peu, si qqn pouvait m'éclairer ?

Merci

Lien à poster
Partager sur d’autres sites

Quand tu es sur Radarr,  c'est les dossier du conteneur que tu dois chercher et non ceux de l'hote (ici ton nas )

Donc dans radarr tu doit chercher /movies et non /volume1...

Lien à poster
Partager sur d’autres sites
Il y a 5 heures, oracle7 a dit :

@Diplo95

Bonjour,

J'attire ton attention sur la valeur de cette version, pour certain conteneur "éxotiques" mettre une version trop récente peut poser problème car ces conteneurs peuvent utiliser encore des fonctionnalités qui sont dépréciées avec les nouvelles version de docker-compose. Dans ce cas, il vaut mieux je crois, laisser la version indiquée pour le conteneur.

@.Shad. et @EVOTk corrigez moi si je dis une c...ie ou si c'est mal exprimé.

PS : Arreeuuhh !!! grillé par @EVOTk 😜

Cordialement

oracle7😉

Non tu as bien expliqué ^^

Perso, je fais que du 2.4 comme version de docker-compose.
Si je trouve une source en 3.x, je réécrit en 2.4.

Lien à poster
Partager sur d’autres sites

Bonjour à tous,

Dans l'interface Docker je n'ai plus accès au registre, si je cherche une image j'ai la notification "Echec de l'interrogation du registre". J'ai tenté plusieurs choses sans succès (arrêt/redémarrage de docker, du nas, désactiver pihole). Je n'ose pas désinstaller et réinstaller Docker par crainte de devoir reconstruire tous mes containers.

Ah, un point important je suis sous DSM7 bêta.

Une idée ?

Lien à poster
Partager sur d’autres sites

Ah peut-être. C'est vrai que ces dernier temps ça marche moins bien. Je regarde cet AM. Merci du conseil

Lien à poster
Partager sur d’autres sites
Il y a 3 heures, .Shad. a dit :

problème de résolution DNS

Bon j'ai désactivé mes zones DNS sur les deux serveurs et même déconnecté le DS212+. J'ai déconnecté le Raspberry avec Pihole, changé les DNS du routeur pour ceux de google (même pas peur), nettoyé les caches DNS et navigateur, changé de navigateur et toujours le même problème.

Si je mets l'adresse https://registry.hub.docker.com dans mon navigateur j'arrive bien à la page d'accueil du hub.

Il reste trois pistes (à mon avis):

1/ Problème DSM7 mais je pense qu'il aurait été signalé.

2/ Problème du hub docker idem le pb aurait été signalé

3/ Problème de mon appli docker.

Pour ce troisième point je peux tenter une désinstallation et une réinstallation mais j'ai peur de perdre mes containers.

Autre solution restaurer l'appli docker avec hyperbackup.

Qu'est ce que tu ferais ?

Lien à poster
Partager sur d’autres sites

Essaie de configurer manuellement les DNS du NAS dans Panneau de configuration -> Réseau, tu mets des DNS publiques et tu ré-essaies.

Pour Docker, si vraiment ça ne donne rien, tu peux d'abord désinstaller sans supprimer les fichiers de configuration.

Si toujours rien, oui tout sauvegarder (ou simplement déplacer de dossier partagé) et réinstaller. Vu que tu utilises Docker-compose, tout réinstaller ne devrait pas être trop long. 😉

Lien à poster
Partager sur d’autres sites

@.Shad. tu est vraiment trop fort !

Je viens de rentrer et m'apprêtais à mettre en oeuvre ton premier conseil et je viens de me rendre compte que le DNS du NAS qui a docker, était configuré sur manuel avec l'IP du second nas, alors que normalement il n'est jamais configuré en manuel. J'avais dû faire un essai, je ne sais plus pourquoi et j'ai oublié de décocher la case. 😳

Case décochée tout est rentré dans l'ordre. Merci de ton aide.👍

 

Lien à poster
Partager sur d’autres sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.