我可以使用-e选项传递环境变量。但是我不确定如何使用docker run命令将命令行参数传递给入口点的jar。
Docker文件
FROM openjdk
ADD . /dir
WORKDIR /dir
COPY ./test-1.0.1.jar /dir/test-1.0.1.jar
ENTRYPOINT java -jar /dir/test-1.0.1.jar
test.sh
#! /bin/bash -l
export AWS_ACCESS_KEY_ID=$(aws configure get aws_access_key_id)
export AWS_SECRET_ACCESS_KEY=$(aws configure get aws_secret_access_key)
$value=7
docker run -e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID -e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY -i -t testjava $value
以其exec形式使用ENTRYPOINT
ENTRYPOINT ["java", "-jar", "/dir/test-1.0.1.jar"]
然后,当您运行时docker run -it testjava $value
,$value
将被“附加”在您的入口点之后java -jar /dir/test-1.0.1.jar $value
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句