首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从docker中导出makefile中的环境变量不起作用?

从docker中导出makefile中的环境变量不起作用?
EN

Stack Overflow用户
提问于 2018-02-19 23:46:13
回答 1查看 468关注 0票数 0

我创建了以下Makefile,如果我调用docker-test,它将运行docker,然后在本地调用makefile build-test目标。

当我手动运行docker并在docker内部调用makefile时,它工作得很好,变量NETDIR设置正确,但是当我从主机调用它时,使用make docker-test,docker内部的变量NETDIR被定义为/src而不是/usr/app/networker/src

代码语言:javascript
复制
export NETDIR=$(PWD)/src

docker-%:
    docker run --rm -v "$(PWD)":/usr/app/networker -w /usr/app/networker network make $(@:docker-%=build-%)

clean-%:
    cd ./build && $(MAKE) $@


build-%:
    cd ./build && $(MAKE) $@
EN

回答 1

Stack Overflow用户

发布于 2018-02-19 23:49:59

您需要在docker run命令中指定环境变量。比如

docker运行--rm -v "$(PWD)":/usr/app/networker -e NETDIR -w /usr/app/networker网络生成$(@:docker-%=内部版本-%)

(这将告诉容器从父环境继承NETDIR,或者您可以选择设置一个值)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48869552

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档