2
votes

Comment ajouter des entrées à / etc / hosts dans le serveur d'applications lando?

J'ai essayé ceci (qui ne devrait rien renvoyer):

$ lando ssh -s appserver -u root -c "echo \"10.0.0.132 pds\" >> /etc/hosts"
10.0.0.132 pds >> /etc/hosts


$ lando ssh -s appserver -u root -c "cat /etc/hosts"
127.0.0.1       localhost
::1     localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.26.0.2      8da36421fdb0
172.19.0.3      8da36421fdb0
172.18.0.4      8da36421fdb0

Ce qui montre qu'il n'a pas été ajouté. Lorsque j'entre en tant que root et que je le fais dans le conteneur, cela fonctionne.

Je voudrais automatiser cela dans un script de construction. Comment? Qu'est-ce que je fais de mal?

Apparemment, cela peut être accompli avec "docker run --add-host" mais comment l'inclure dans le fichier .lando.yml?


4 commentaires

D'où vient cette adresse IP?


L'adresse IP de pds était un serveur LAN.


avez-vous trouvé une solution simple?


Pas encore. Je devrais consulter à nouveau la documentation Lando car il y avait des mises à jour récentes qui auraient pu faciliter les choses.


3 Réponses :


1
votes

/ etc / hosts est géré par Docker. Si vous avez vraiment besoin d'ajouter un enregistrement d'hôte, utilisez le paramètre docker run :

--add-host = "": Ajouter une ligne à / etc / hosts (host: IP)

Doc: https://docs.docker.com/engine/ reference / run / # network-settings


1 commentaires

Comment insérer des paramètres d'exécution de docker dans le fichier de configuration .lando.yml?



0
votes

1 commentaires

Pour plus de commodité, l'adresse IP et le domaine doivent être dans / etc / hosts. C'est pour accéder à une autre étape ou à d'autres ressources.



0
votes

J'ai parcouru la documentation de Lando avec "etc / hosts site: lando.dev" et j'ai trouvé un indice sur la solution probable dans la section Services - Étapes de construction . Je n'ai pas encore pu l'essayer mais j'y vois un exemple avec:

services:
  servicename:
    run_as_root:
      - echo "127.0.0.1 mysite.lndo.site" >> /etc/hosts

Apparemment, c'est la bonne façon d'ajouter une nouvelle ligne à / etc / hosts dans un conteneur de service.


0 commentaires