我已成功将我的docker镜像推送到swisscom应用程序云(类似于此示例:https://ict.swisscom.ch/2016/05/docker-and-cloudfoundry/)。
现在我想在docker CMD中使用用户提供的环境变量。像这样的东西:
ADD target/app.jar app.jar
CMD java -jar app.jar -S $USER_PROVIDED_ENV_VARIABLE
我也尝试过系统提供的环境变量:
ADD target/app.jar app.jar
CMD java -jar app.jar -S $VCAP_APPLICATION
我在这做错了什么?
如果你的Dockerfile是这样构建的,你只需要在运行图像时传递-e
标志。
示例Dockerfile:
FROM ubuntu:16.10
ENV MY_VAR "default value" # Optional - set a default value.
CMD echo $MY_VAR
构建图像:
docker build -t my_image .
从图像运行容器:
docker run -e MY_VAR="my value here" my_image