如何在Lando Appserver中的/ etc / hosts中添加条目?

时间:2019-02-20 13:54:47

标签: docker lando

我尝试了此操作(该操作不应返回任何内容):

$ 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

显示未添加。 当我以root身份输入并在容器中执行此操作时,它就可以工作。

我想在构建脚本中自动执行此操作。怎么样?我在做什么错了?

3 个答案:

答案 0 :(得分:0)

/etc/hosts由Docker管理。如果您确实需要添加主机记录,请使用docker run参数:

  

-add-host =“”:在/ etc / hosts(host:IP)中添加一行

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

答案 1 :(得分:0)

Lando支持代理设置: (https://docs.lando.dev/config/proxy.html#usage

proxy:
  web:
    - mysite.lndo.site
    - sub.mysite.lndo.site
    - bob.frank.kbox.com
    - tippecanoe.tyler.too

答案 2 :(得分:0)

我在Lando文档中搜索了“ etc / hosts site:lando.dev”,并在Services - Build Steps部分中找到了可能的解决方案的提示。我还无法尝试,但是我看到一个示例:

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

显然,这是将新行附加到服务容器内的/ etc / hosts的正确方法。