bash – Docker运行和变量替换
发布时间:2020-12-15 22:39:06 所属栏目:安全 来源:网络整理
导读:我在一个名为image_name的脚本中有一个变量 image_name="my-app" 我试图将此变量传递给docker容器,如下所示: docker build -t $image_name .docker run --rm --name $image_name -e "app_dir=${image_name}" $image_name 但是这个变量没有设置,并且在docker
我在一个名为image_name的脚本中有一个变量
image_name="my-app" 我试图将此变量传递给docker容器,如下所示: docker build -t $image_name . docker run --rm --name $image_name -e "app_dir=${image_name}" $image_name 但是这个变量没有设置,并且在docker构建的上下文中是空白的 这是以下Dockerfile的片段: .... RUN echo dir is $app_dir .... 这是以下构建输出的片段: .... Step 2 : RUN echo dir is $app_dir ---> Running in db93a939d701 dir is ---> c9f5e2a657d5 Removing intermediate container db93a939d701 .... 任何人都知道如何进行变量替换? 解决方法
请注意,您正在使用Dockerfile中的变量.该变量将在构建时(docker build)进行评估,因此您需要在此时传递其值.这可以通过–build-arg param来实现.
改变你的例子,它将是: docker build --build-arg app_dir=${image_name} -t $image_name . docker run --rm --name $image_name $image_name (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |