私信  •  关注

Marco Altran Mariano Ruiz

Marco Altran Mariano Ruiz 最近创建的主题
Marco Altran Mariano Ruiz 最近回复了
7 年前
回复了 Marco Altran Mariano Ruiz 创建的主题 » 如何在docker container proxy_pass中配置nginx来自行托管它?[复制品]

我做了一个类似于上面文章的黑客攻击,让本地IP映射到容器中的别名(DNS)。主要问题是动态地使用一个简单的脚本,该脚本在 Linux和OSX主机IP地址 . 我编写的这个脚本在两种环境下都能工作(即使在linux发行版中 "$LANG" != "en_*" 配置):

ifconfig | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v 127.0.0.1 | awk '{ print $2 }' | cut -f2 -d: | head -n1

因此,使用docker compose,完整配置将是:

启动脚本(docker run.sh) :

export DOCKERHOST=$(ifconfig | grep -E "([0-9]{1,3}\.){3}[0-9]{1,3}" | grep -v 127.0.0.1 | awk '{ print $2 }' | cut -f2 -d: | head -n1)
docker-compose -f docker-compose.yml up

docker-compose.yml文件 :

myapp:
  build: .
  ports:
    - "80:80"
  extra_hosts:
    - "dockerhost:$DOCKERHOST"

然后改变 http://localhost http://dockerhost 在你的密码里。

有关如何自定义 DOCKERHOST 剧本,看看 this post 并解释它是如何工作的。