我使用下面提到的Dockerfile创建了一个docker镜像。图像中有一个jar文件,需要很少的参数来运行它。我使用docker run命令传递参数,但它会引发错误。查找下面的详细信息。
Dockerfile内容
FROM ubuntu:14.04
ENV http_proxy http://http.proxy.nxp.com:7000
ENV https_proxy http://http.proxy.nxp.com:7000
RUN apt-get update
<set of lines for installing java is here>
ENV JAVA_HOME /usr/lib/jvm/java-8-oracle
copy apache-jmeter-3.1 /apache-jmeter-3.1
RUN mkdir /jarloc
copy Test.jar /jarloc
RUN java -version
ENTRYPOINT [ java -jar /jarloc/Test.jar ]
RUN ls -l /jarloc
我创建了一个名为jmaster:1.0的图像,并给出了以下命令来旋转容器。
docker run jmaster:1.0 http://win_loc/soasta_parent/soasta/MyPOC/Login_Data.csv http://win_loc/soasta_parent/soasta/MyPOC/Dpc_data.csv 30 300 30
这给了我以下错误。
http://win_loc/soasta_parent/soasta/MyPOC/Login_Data.csv:1:[: 失踪]
我可以从docker里面运行这个脚本(docker run -it jmaster:1.0 / bin / bash)。它给了我正确的输出。但是当我尝试在docker run命令中传递参数时,我收到此错误。我是以错误的方式传递此信息还是有其他方法可以这样做?
当我使用&#39; docker run -it imagename / bin / bash&#39;进入docker时并执行以下,我从jar获得正确的结果。
/jarloc#java -jar Test.jar http://win_loc/soasta_parent/soasta/MyPOC/Login_Data.csv http://win_loc/soasta_parent/soasta/MyPOC/Dpc_data.csv 30 300 30
答案 0 :(得分:2)
尝试
ENTRYPOINT ["java","-jar","/jarloc/Test.jar"]
这应该采用docker run
中的参数