【问题标题】:how do i run a container so that it is running behind a proxy + on running?我如何运行一个容器,以便它在代理后面运行 + 运行?
【发布时间】:2015-10-04 21:15:19
【问题描述】:

如何运行容器以使其在代理后运行?

目前我必须运行我的图像/容器: docker run -it <imagename>

那么我必须执行以下操作:

export http_proxy=http://1.2.3.4:3128
export https_proxy=http://1.2.3.4:3128

有没有办法可以将代理放在图像中的文件中,然后提交,然后每次启动它时我都不必发出导出命令来指向代理?

我试过把我的代理设置:

export http_proxy=http://1.2.3.4:3128
export https_proxy=http://1.2.3.4:3128

在以下文件中:

/etc/profile/etc/environment

然后提交了这个新图像。但是当我运行这个图像时:

docker run -it <imagename>

我做了一个env | grep proxy 我的代理设置不在env 但它们存在于文件中。

谁能给点建议?

【问题讨论】:

    标签: proxy docker containers


    【解决方案1】:

    只需在 dockerfile 中使用 ENV 命令...

    https://docs.docker.com/reference/builder/#env

    【讨论】:

    • tks 必须按照以下方式工作 docker run --env http_proxy=http://10.201.202.49:53128 --rm -i -t -p 3000:3000 meteor-todos:0.1 但我希望将其存储在图像/容器、文件等中。当我调用图像时不必设置它。这个可以吗?
    • 也许如果我运行这个容器docker run --env http_proxy=http://10.201.202.49:53128 --rm -i -t -p 3000:3000 meteor-todos:0.1 然后将它作为一个图像提交它会保存环境变量?
    • 供我参考:我可以重新启动我退出的容器,并且 env 变量仍然存在docker start -ai <container_name>
    • 供我参考:我可以将容器提交为图像docker commit -a "name <email#email.com>" -m "meteor added proxy using --env" 2628 meteor-todos:0.2,然后运行该图像,环境变量仍将存在docker run --rm -it meteor-todos:0.2
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-16
    • 1970-01-01
    • 1970-01-01
    • 2013-08-02
    • 1970-01-01
    • 2021-11-16
    相关资源
    最近更新 更多