MilesTEG1 Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 Tu dois utiliser l’adresse iP que tu as spécifié dans le compose du conteneur . le réseau macvlan n’est qu’une plage d’ip, une étagère si tu veux. Le conteneur lui possède une iP. montre ton docker-compose. 0 Citer
MilesTEG1 Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 @CyberFr Alors je viens de regarder et je n'ai pas le aux-adress dans mon script de création du réseau macvlan : docker network create -d macvlan \ --subnet=192.168.2.0/24 \ --ip-range=192.168.2.208/28 \ --gateway=192.168.2.1 \ -o parent=eth0 \ macvlan-network Pour l'adresse IP du conteneur, montre le contenu de ton docker-compose.yml, car c'est là que doit se trouver l'adresse IP, car il faut spécifier dans ce fichier que le réseau où doit se trouver le conteneur est le réseau macvlan. Regarde les fichiers que je t'ai donné pour adguard home : Tu verras dans le service adguardhome_macvlan, il y a une sous-section networks dans laquelle du précise quelle IPv4 tu veux pour le conteneur (il faut qu'elle soit libre hein 😉 ) Et à la fin du fichier, tu as la section réseau qui précise que le réseau que doit rejoindre le conteneur est un réseau externe déjà créé, ton réseau macvlan. --- version: "2.4" services: adguardhome_macvlan: image: adguard/adguardhome:latest # https://github.com/AdguardTeam/AdGuardHome # https://github.com/AdguardTeam/AdGuardHome/wiki/Docker container_name: adguardhome_macvlan hostname: AdGuard-Home--DS920Plus # Permet d'avoir un nom pour le conteneur dans AdGuard lui même (sinon c'est une chaine aléatoire) environment: - PUID=1010 - PGID=100 - TZ=Europe/Paris - LANG=fr_FR.UTF8 - LANGUAGE=fr_FR.UTF8 # --------------------------------------------------------------------------------- # Le label ci-dessous permet à Watchtower de faire les mises à jour automatiquement # Cela peut-être supprimé si Watchtower n'est pas utilisé. labels: - "com.centurylinklabs.watchtower.enable=true" # --------------------------------------------------------------------------------- # Le label ci-dessous sert à AutoHeal pour redémarrer le conteneur s'il devient Unhealthy... # - "AUTOHEAL_CONTAINER_LABEL=autoheal" # --------------------------------------------------------------------------------- volumes: - "/volume1/docker/adguardhome_macvlan/work:/opt/adguardhome/work" - "/volume1/docker/adguardhome_macvlan/conf:/opt/adguardhome/conf" # ports: # - "953:53" # - "967:67/udp" # - "968:68" # - "8080:80/tcp" # - "9443:443/tcp" # - "9853:853/tcp" # - "3030:3000/tcp" networks: macvlan-network: ipv4_address: 192.168.2.210 # Mettre ici l'IP macvlan définie dans les scripts restart: unless-stopped healthcheck: test: "/bin/netstat -pant | /bin/grep 53" interval: 45s timeout: 30s retries: 3 networks: macvlan-network: # Ce réseau devra bien entendu être créé avant avec le script external: true 0 Citer
.Shad. Posté(e) le 10 août 2022 Auteur Posté(e) le 10 août 2022 @CyberFr docker network create | Docker Documentation aux-address est utile lorsque tu définis une ip-range pour un réseau donné et qu'il y a déjà des IP prises dans cette plage. Ca permet d'empêcher d'attribuer ces IP là. Pour le port 8080, je pense que tu n'as pas compris. Quand tu es en bridge, tu dois translater le port car dans le cas de DSM le port 80 est déjà pris par Webstation. C'est pour ça qu'on translate le port 80 du conteneur sur un autre port (par exemple le 8080). Ici, tu es en macvlan, donc ton conteneur est comme une machine physique indépendante, et tous ses ports par défaut son accessibles. Heimdall expose les ports 80 et 443. Essaie donc de taper http://192.168.1.104:80 (car si tu regardes bien ton impression d'écran avec l'inspection du réseau, tu vois que heimdall est sur l'IP 104 et pas 105). 0 Citer
CyberFr Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 il y a 7 minutes, MilesTEG1 a dit : Pour l'adresse IP du conteneur, montre le contenu de ton docker-compose.yml, car c'est là que doit se trouver l'adresse IP, car il faut spécifier dans ce fichier que le réseau où doit se trouver le conteneur est le réseau macvlan. Je n'utilise pas ce fichier, il faut disposer de Docker Compose je suppose ? il y a 6 minutes, .Shad. a dit : Pour le port 8080, je pense que tu n'as pas compris. Quand tu es en bridge, tu dois translater le port car dans le cas de DSM le port 80 est déjà pris par Webstation. C'est pour ça qu'on translate le port 80 du conteneur sur un autre port (par exemple le 8080). C'est noté. il y a 7 minutes, .Shad. a dit : Essaie donc de taper http://192.168.1.104:80 (car si tu regardes bien ton impression d'écran avec l'inspection du réseau, tu vois que heimdall est sur l'IP 104 et pas 105). Bingo ! J'accède bien au conteneur. Je n'ai pas vu que heimdall était sur le port 104, je vais regarder plus attentivement. Il sera toujours à cette adresse ou ça risque de changer à l'occasion d'un redémarrage ? 0 Citer
MilesTEG1 Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 il y a 8 minutes, CyberFr a dit : Je n'utilise pas ce fichier, il faut disposer de Docker Compose je suppose ? Haaa ! Mais du coup tu installes comment ? Via l'interface DSM ? il y a 9 minutes, CyberFr a dit : Je n'ai pas vu que heimdall était sur le port 104 Sur l'IP en .104 Le port de connexion c'est autre chose 🤣 0 Citer
CyberFr Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 @MilesTEG1 tu pinailles 🙃 J'ai écrit un peu vite. J'ai supprimé dans le container la translation des ports 8080 -> 80 et 8443 > 443. 0 Citer
CyberFr Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 J'ai également recréé le réseau en supprimant le aux-adress. 1 Citer
.Shad. Posté(e) le 10 août 2022 Auteur Posté(e) le 10 août 2022 @CyberFr J'ai regardé l'interface Docker DSM, ça faisait plus d'un que je n'avais pas regardé, il y a quelques belles améliorations pour la création de conteneurs, leur assistant est bien foutu. Néanmoins, tu ne pourras pas attribuer une IP à un conteneur dans un réseau macvlan par l'intermédiaire de l'interface graphique j'ai l'impression. Pour ça il faut passer par la ligne de commande ou par docker-compose. 0 Citer
CyberFr Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 il y a 23 minutes, .Shad. a dit : Pour ça il faut passer par la ligne de commande ou par docker-compose. Ça m'intéresse. Comment fait-on par la ligne de commande ? Sinon je viens de découvrir que Docker-compose est installé en même temps que Docker sur les NAS Synology ce qui évite une installation supplémentaire. Si je peux éviter de me plonger dans Docker-compose dans un premier temps, cela me fera gagner quelques mois 🙂 0 Citer
MilesTEG1 Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 @CyberFr Je te conseille très vivement d’investir un chouilla de temps à l’installation de Portainer (voir un des tuto de notre ami @.Shad.). Et là tu pourras utiliser les fichiers docker-compose.yml avec Portainer , ce sera autrement plus sympa que la ligne de commande 😝 moi je ne passe que par là (sauf script particulier à lancer). 1 Citer
CyberFr Posté(e) le 10 août 2022 Posté(e) le 10 août 2022 Alors si tu ne passes que par là, l'élève que je suis s'incline 🙂 1 Citer
.Shad. Posté(e) le 11 août 2022 Auteur Posté(e) le 11 août 2022 (modifié) Il y a 1 heure, bliz a dit : Dans le fichier yml, comment fait on pour forcer à utiliser le host ? Pour le réseau bridge ou host : network_mode: bridge network_mode: host Par exemple dans un fichier compose : version: "2.1" services: exemple: image: coucou/exemple container_name: exemple-container network_mode: host environment: - ... Pour un réseau bridge personnalisé, s'il est lié au fichier compose (interne, pas externe) : version: "2.1" services: exemple: image: coucou/exemple container_name: exemple-container networks: - net-exemple environment: - ... networks: net-exemple: Et s'il est externe : version: "2.1" services: exemple: image: coucou/exemple container_name: exemple-container networks: - net-exemple environment: - ... networks: net-exemple: external: true Modifié le 11 août 2022 par .Shad. 1 Citer
MilesTEG1 Posté(e) le 11 août 2022 Posté(e) le 11 août 2022 Si vous utilisez Portainer, il a tendance à ajouter le nom du conteneur au nom du réseau, sauf si on précise le nom du réseau comme ceci : version: "2.1" services: exemple: image: coucou/exemple container_name: exemple-container networks: - mon_reseau environment: - ... networks: mon_reseau: external: name: mon_reseau 0 Citer
MilesTEG1 Posté(e) le 11 août 2022 Posté(e) le 11 août 2022 @bliz Non pas du tout. Le réseau host c'est le réseau du NAS, il n'a donc pas de nom... et du coup, tu n'as de ports à transférer au conteneur. En fait, le mode host c'est même pas un réseau... tu vas partager les ports de l'hôte, ce qui peut avoir des avantages comme des inconvénients. 1 Citer
MilesTEG1 Posté(e) le 11 août 2022 Posté(e) le 11 août 2022 il y a 8 minutes, bliz a dit : Merci pour la réponse, en tout cas, pour l'avantage, c'est l'utilisation du cpu qui est moindre, l'inconvénient d'après ce que j'ai lu, c'est qu'il ne passe pas par le pafeu du nas Tu as une source pour le coup du parefeu ? car ça m'étonnerait que ce soit vraiment le cas. @.Shad. ? 1 Citer
.Shad. Posté(e) le 11 août 2022 Auteur Posté(e) le 11 août 2022 Quand on met un conteneur en mode host, c'est comme si c'était une application native, comme dsfile etc... Les réglages du pare-feu sont effectifs. 2 Citer
MilesTEG1 Posté(e) le 11 août 2022 Posté(e) le 11 août 2022 il y a 17 minutes, .Shad. a dit : Quand on met un conteneur en mode host, c'est comme si c'était une application native, comme dsfile etc... Les réglages du pare-feu sont effectifs. Il me semblait bien ^^ 0 Citer
.Shad. Posté(e) le 12 août 2022 Auteur Posté(e) le 12 août 2022 @bliz Ca j'aurai du mal à t'aider 😞 0 Citer
MilesTEG1 Posté(e) le 12 août 2022 Posté(e) le 12 août 2022 @bliz 1. Tente de redémarrer la box. 2. Si ça résout pas le soucis, réinitialise la box. 3. Si ça ne résout toujours pas le soucis... achète un vrai routeur et met le DMZ dans la box. 😅 0 Citer
.Shad. Posté(e) le 12 août 2022 Auteur Posté(e) le 12 août 2022 @MilesTEG1 @bliz Ce serait plus opportun de créer un sujet dédié je pense. 🙂 2 Citer
_DR64_ Posté(e) le 21 décembre 2022 Posté(e) le 21 décembre 2022 Bonjour ! Quelqu'un pourrait m'expliquer comment s'utilise un dockerfile svp ? Le docker-compose pas de soucis, docker en lui même pas de soucis mais le dockerfile (et portainer) là j'avoue être à la masse. Merci! 0 Citer
MilesTEG1 Posté(e) le 21 décembre 2022 Posté(e) le 21 décembre 2022 Il y a 2 heures, _DR64_ a dit : Bonjour ! Quelqu'un pourrait m'expliquer comment s'utilise un dockerfile svp ? Le docker-compose pas de soucis, docker en lui même pas de soucis mais le dockerfile (et portainer) là j'avoue être à la masse. Merci! Je n’ai jamais réussi à utiliser le dockerfile pour le Dashboard de Crowdsec via portainer… c’est un peu la loose. mais de ce que j’ai compris, le dockerfile te permet de construire ton image personnalisée à partir des sources. 0 Citer
.Shad. Posté(e) le 22 décembre 2022 Auteur Posté(e) le 22 décembre 2022 Ton image c'est une lasagne, le Dockerfile c'est la recette, tu dis quoi mettre à chaque couche pour la construire. Généralement, le principe c'est de partir d'une base OS ultra-légère, d'y ajouter les paquets dont tu as besoin via apt-get par exemple, de supprimer le cache une fois installés, et de configurer ton application selon ton besoin. J'ai très peu pratiqué, mais on trouve assez facilement des tutos pas-à-pas sur Internet pour créer sa propre image Docker. Je suis au boulot, je ne peux pas consulter mes favoris mais je regarde ce soir si j'ai encore quelques liens dans Chrome. 1 Citer
.Shad. Posté(e) le 23 décembre 2022 Auteur Posté(e) le 23 décembre 2022 @_DR64_J'ai ça : https://rominirani.com/docker-tutorial-series-a7e6ff90a023 https://takacsmark.com/dockerfile-tutorial-by-example-dockerfile-best-practices-2018/#overview 1 Citer
Messages recommandés
Rejoindre la conversation
Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.