Java项目的Docker镜像

我想做一个Java项目的docker形象。 我首先创build了一个目录,并在其中创build了一个docker.txt文件。 这些文件包含这个

FROM java:8 # Install maven RUN apt-get update RUN apt-get install -y maven WORKDIR /home/mmt/CouchBaseClient/CB-RestAPI/CouchBaseThinClient # Prepare by downloading dependencies ADD pom.xml /home/mmt/CouchBaseClient/CB-RestAPI/CouchBaseThinClient/pom.xml RUN ["mvn", "dependency:resolve"] RUN ["mvn", "verify"] # Adding source, compile and package into a fat jar ADD src /home/mmt/CouchBaseClient/CB-RestAPI/CouchBaseThinClient/src RUN ["mvn", "package"] EXPOSE 4567 CMD ["/usr/lib/jvm/java-8-openjdk-amd64/bin/java", "-jar", "target/sparkexample-jar-with-dependencies.jar"] 

然后我在terminal运行下面​​的命令

 docker build -t API . 

我得到以下错误

 invalid value "API" for flag -t: Error parsing reference: "API" is not a valid repository/tag See 'docker build --help'. 

Docker抱怨“API”,因为它不允许带有一个或多个大写字符的标签名称:

 $ docker build -t FOO . repository name component must match "[a-z0-9](?:-*[a-z0-9])*(?:[._][a-z0-9](?:-*[a-z0-9])*)*" 

通常用于构buildDocker映像的“配方”是写在一个名为Dockerfile的文件中,无论如何,您可以继续使用docker.txt使用-f选项:

 docker build -f docker.txt -t api .