Tag: env

为什么“/ usr / bin / env bash -x”只能在命令行中工作?

我正在玩一个docker CentOS镜像,在terminal里find执行“ /usr/bin/env bash -x ”的命令是OK的: bash-4.1# /usr/bin/env bash -x bash-4.1# exit + exit exit 但是在将这个命令写入脚本并执行后,它不起作用,并提示“ No such file or directory ”: bash-4.1# ls -lt a.sh -rwxr-xr-x. 1 root root 23 May 20 04:27 a.sh bash-4.1# cat a.sh #!/usr/bin/env bash -x bash-4.1# ./a.sh /usr/bin/env: bash -x: No such file or directory 两种方法有什么区别?

在Docker容器中不能更改环境variables

docker run -e HOST_IP:xxxx 我使用cmd来检查env HOST_IP改变了: docker exec CONTAINER_ID env |grep HOST_IP 我发现这些尝试后没有改变: docker exec CONTAINER_ID bash -c 'export HOST_IP=XXX' docker exec CONTAINER_ID bash -c 'echo HOST_IP=XXX >> ~/.bashrc && source ~/.bashrc' 为什么? 什么控制了envvariables?

ansible docker env var在容器中不可用

所以我开始像这样的一个docker集装箱 name: start the new shiny container docker: name: web image: pneuma/web state: started detach: True ports: – "80:80" volumes: – /data/db:/var/lib/postgresql – /data/log:/var/log/postgresql env: DEPLOYMENT_ENVIRONMENT: "{{ deployment_env }}" 但var DEPLOYMENT_ENVIRONMENT在容器内不可用,当我尝试echo $DEPLOYMENT_ENVIRONMENT或使用其他地方。 有什么遗漏?

将主机envvariables用于docker远程API

我试图使用目标主机的envvariables来参数化我的容器,当启动它与远程API,但没有一个工作… "Env": [ "ENV_VAR=`$TEST`", "ENV_VAR2=$TEST" ], 有没有人有一个想法如何实现这一目标?

我怎样才能在DockerFile中定义我的ENVvariables,并将其传递给由supervisord托pipe脚本提交的spark图像?

我正在构build一些Docker Spark图像,对于如何将DockerFile中定义的环境(ENV)variables一直向下传递到容器,通过“run -e”进入supervisord,然后进入spark,我有点困惑- 提交shell,而不必在supervisord.conf文件中再次对它们进行硬编码(这似乎是在这里有点类似的build议: supervisord环境variables设置应用程序 )。 为了帮助解释,想象下面的组件: DockerFile(包含大约20个环境variables“ENV FOO1 bar1”等) run.sh(docker run -d -e my_spark_program) conf / supervisord.conf([program:my_spark_program] command = sh /opt/spark/sbin/submit_my_spark_program.sh等) submit_my_spark_program.sh(包含我想运行的jar的spark提交 – 可能还需要类似–files•–conf'spark.executor.extraJavaOptions = -Dconfig.resource = app'•–conf'spark。 driver.extraJavaOptions = -Dconfig.resource = app',但是这看起来不太合适?) 我想我想在DockerFile中定义我的ENVvariables一次,并且我认为应该可以通过使用“-e”开关的run.sh将它们传递到容器中,但是我似乎无法了解如何将它们从那里传递到supervisord和超出spark-submit shell(submit_my_spark_program.sh),以便它们最终可用于我的spark提交的jar文件。 这似乎有点过度devise,所以也许我在这里失去了一些东西…?

在docker run命令中传递多个env文件

我只是想知道我怎么能指向两个env文件,说/var/app/old/file.conf和/var/market/old/db.conf ,都在命令行中,因为我发现有多个支持-e标志。 Docker是否支持在下面的命令行中指向多个env文件 docker run -d –hostname=158.64.72.80 -d -p 80:80 –env-file /var/app/old/file.conf –env-file /var/market/old/db.conf

Dockerfile – 使用dynamic值定义ENVvariables

我想用dynamic值更新PATH环境variables。 这是我到目前为止在我的Dockerfile中试过的: … ENV PATH '$(dirname $(find /opt -name "ruby" | grep -i bin)):$PATH' … 但是导出显示该命令没有被解释: root@97287b22c251:/# export declare -x PATH="\$(dirname \$(find /opt -name \"ruby\" | grep -i bin)):\$PATH" 我不想硬编码的价值。 是否有可能实现它? 谢谢